Part Number Hot Search : 
MAX488 2SC55 UPD75517 M67769C SKQYP P3500 M29F800D NJL6163R
Product Description
Full Text Search
 

To Download EVAL-ADAU1701EB Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
 Preliminary Technical Data
FEATURES
28/56-bit, 50 MHz digital audio processor Stereo ADC: 100 dB SNR and -80 dB THD+N 4-channel DAC: 104 dB SNR and -90 dB THD+N Complete stand-alone operation * Self-boot from serial EEPROM * Auxiliary ADC with four-input mux for analog control * GPIOs for digital controls and outputs Fully programmable with SigmaStudioTM graphical tool 28-bit x 28-bit multiplier with 56-bit accumulator for full double precision processing Clock Oscillator for generating master clock from crystal PLL for generating master clock from 64 x fS, 256 x fS, 384 x fS, or 512 x fS clocks Flexible serial data I/O ports with I2S compatible, leftjustified, right-justified, and TDM modes Sampling rates up to 192 kHz supported On-chip voltage regulator for compatibility with 3.3 V systems 48-lead LQFP plastic package
SigmaDSP(R) 28/56-Bit Audio Processor with 2ADC/4DAC ADAU1701
APPLICATIONS
Multimedia speaker systems MP3 player speaker docks Automotive head units Mini-component stereos Digital televisions Studio monitors Speaker crossovers Musical instrument effects processors In-seat sound systems (aircraft/motor coaches)
FUNCTIONAL BLOCK DIAGRAM
3.3 V DIGITAL DIGITAL VDD GROUND 3 3 ANALOG ANALOG PLL VDD GROUND MODE 3 3 3 PLL LOOP FILTER CRYSTAL 2
1.8 V REGULATOR
PLL
CLOCK OSCILLATOR
2-CHANNEL ANALOG INPUT FILTA / ADC_RES
STEREO ADC
S
28/56-BIT, 50 MHz AUDIO PROCESSOR CORE 40 ms DELAY MEMORY CONTROL INTERFACE AND SELFBOOT 8-CH DIGITAL INPUT 8-BIT AUX ADC GPIO
2
DAC
FILTD / CM 4-CHANNEL ANALOG OUTPUT
DAC
2
RESET/ MODE SELECT
8-CH DIGITAL OUTPUT
INPUT/OUTPUT MATRIX
5
RESET SELF BOOT I2C/SPI & WRITEBACK
4
DIGITAL IN OR GPIO
4
AUX ADC OR GPIO
4
DIGITAL OUT OR GPIO
Figure 1.
GENERAL DESCRIPTION
The ADAU1701 is a complete audio system-on-a-chip including a 28/56-bit audio DSP, ADCs and DACs, and microcontroller-like control interfaces. Signal processing includes equalization, crossover, bass enhancement, multiband dynamics processing, delay compensation, speaker compensation, and stereo image widening. These algorithms can be used to compensate for the real-world limitations of speakers, amplifiers, and listening environments, resulting in a dramatic improvement of perceived audio quality. The signal processing used in the ADAU1701 is comparable to that found in high end studio equipment. Most of the processing is done in full 56-bit double-precision mode, resulting in very good low level signal performance. The ADAU1701 is a fully-programmable DSP. The easy-to-use SigmaStudio software allows the user to graphically configure a custom signal processing flow using blocks such as biquad
Rev. PrF
Information furnished by Analog Devices is believed to be accurate and reliable. However, no responsibility is assumed by Analog Devices for its use, nor for any infringements of patents or other rights of third parties that may result from its use. Specifications subject to change without notice. No license is granted by implication or otherwise under any patent or patent rights of Analog Devices. Trademarks and registered trademarks are the property of their respective owners.
filters, dynamics processors, level controls, and GPIO interface controls. ADAU1701 programs can be loaded on power-up either from a serial EEPROM though its own self-boot mechanism or from an external microcontroller. On power-down, the current state of the parameters can be written back to the EEPROM from the ADAU1701 to be recalled the next time the program is run. The ADAU1701's two sigma-delta (- ) ADCs and four - DACs provide an analog-in to analog-out dynamic range greater than 100 dB. The ADC's THD+N is -80 dB and the DAC's is -90 dB. Digital input and output ports allow a glueless connection to additional ADCs and DACs. The ADAU1701 communicates through either an I2C bus or a 4-wire SPI port.
One Technology Way, P.O. Box 9106, Norwood, MA 02062-9106, U.S.A. Tel: 781.329.4700 www.analog.com Fax: 781.461.3113 (c)2006 Analog Devices, Inc. All rights reserved.
ADAU1701 TABLE OF CONTENTS
Features .............................................................................................. 1 Applications....................................................................................... 1 Functional Block Diagram .............................................................. 1 General Description ......................................................................... 1 Specifications..................................................................................... 4 Analog Performance .................................................................... 4 Digital I/O ..................................................................................... 5 Power.............................................................................................. 5 Temperature Range ...................................................................... 5 Digital Timing............................................................................... 5 PLL ................................................................................................. 6 Regulator........................................................................................ 6 Absolute Maximum Ratings............................................................ 7 ESD Caution.................................................................................. 7 Typical Performance Characteristics ............................................. 8 Pin Configuration and Functions................................................. 10 Overview.......................................................................................... 13 Initialization .................................................................................... 14 Power-Up Sequence ................................................................... 14 Recommended Program/Parameter Loading Procedure ..... 14 Power Reduction Modes............................................................ 14 Using the Oscillator.................................................................... 14 Setting Master Clock/PLL Mode .............................................. 15 Voltage Regulator ....................................................................... 15 Two-Channel Audio ADC............................................................. 17 Four-Channel Audio DAC ............................................................ 18 Control Port..................................................................................... 19 Overview...................................................................................... 19 I2C Port ........................................................................................ 19 SPI Port ........................................................................................ 20 Self boot ....................................................................................... 23
Preliminary Technical Data
Signal Processing ............................................................................ 25 Overview ..................................................................................... 25 Numeric Formats ....................................................................... 25 Programming.............................................................................. 25 RAMs and Registers....................................................................... 26 Control Port Addressing ........................................................... 26 Parameter RAM.......................................................................... 26 Safeload Registers ....................................................................... 27 Data Capture Registers .............................................................. 27 DSP Core Control Register ....................................................... 28 Interface Registers ...................................................................... 28 Control Port Read/Write Data Formats .................................. 28 Data RAM ................................................................................... 30 Multipurpose Pins .......................................................................... 31 MultiPurpose pin Configuration Registers ............................ 31 GPIO pin Setting Register......................................................... 31 Auxiliary ADC............................................................................ 31 General Purpose Input/Outputs .............................................. 32 Serial Data Input/Output Ports ................................................ 32 Serial Output Control Registers ............................................... 34 Serial Input Control Register .................................................... 35 Layout Recommendations............................................................. 37 Parts Placement .......................................................................... 37 Grounding ................................................................................... 37 Typical Application Schematic - Self Boot Mode...................... 38 Typical Application Schematic - I2C Control............................. 39 Typical Application Schematic - SPI Control ............................ 40 Digital Timing Diagrams............................................................... 41 Outline Dimensions ....................................................................... 43 Ordering Guide .......................................................................... 43
REVISION HISTORY
Rev. PrF | Page 2 of 43
Preliminary Technical Data
4/06--Preliminary Version PrF
ADAU1701
Rev. PrF | Page 3 of 43
ADAU1701 SPECIFICATIONS
Table 1. Test conditions, unless otherwise noted
Parameter Analog Supply Voltage (AVDD) Digital Supply Voltage (DVDD) PLL Voltage (PVDD) Input/Output Voltage (IOVDD) Ambient Temperature Master Clock Input Load Capacitance Load Current Input Voltage, HI Input Voltage, LO Conditions 3.3 V 1.8 V 3.3 V 3.3 V 25 C 12.288 MHz
Preliminary Technical Data
ANALOG PERFORMANCE
Table 2. Analog Performance
Parameter VOLTAGE REFERENCE Absolute Voltage (CM, FILTA, FILTD) Temperature Coefficient AUX ANALOG INPUTS Full Scale Analog Input INL DNL Offset Input impedance ADC INPUTS Number of channels Resolution Full Scale Input Signal-to-Noise Ratio A-Weighted Dynamic Range A-Weighted Total Harmonic Distortion + Noise Interchannel Gain Mismatch Crosstalk DC Bias Gain Error Power Supply Rejection DAC OUTPUTS Number of channels Resolution Full Scale Analog Output Signal-to-Noise Ratio A-Weighted Dynamic Range A-Weighted Total Harmonic Distortion + Noise Crosstalk Interchannel Gain Mismatch Min Typical 1.5 130 3.3 TBD TBD TBD 30 2 24 100 (283) Max Units V ppm/C V Test Conditions/Comments
mV k Stereo input Bits Arms (A p-p) dB -60dB with respect to full scale Analog input dB dB dB dB V % dB 2Vrms input with 20k (18 k external + 2 k internal) series resistor
100 100 -80 TBD TBD 1.5 TBD TBD 4 24 0.9 (2.5) 104 104 -90 TBD TBD
Rev. PrF | Page 4 of 43
-1 dB with respect to full scale Analog input Left and Right channel Gain Mismatch Analog channel-to-channel crosstalk
1kHz, 300mVP-P Signal at AVDD 2 stereo output channels
Bits Vrms (V pp) dB -60dB with respect to full scale Analog input dB dB dB dB -1 dB with respect to full scale Analog input Analog channel-to-channel crosstalk Left and Right channel Gain Mismatch
Preliminary Technical Data
Parameter Gain Error DC Bias Power Supply Rejection Min Typical TBD 1.5 TBD Max Units % V dB Test Conditions/Comments
ADAU1701
1kHz, 300mVP-P Signal at AVDD
DIGITAL I/O
Table 3. Digital I/O
Parameter Input Voltage, HI (VIH) Input Voltage, LO (VIL) Input Leakage, HI (IIH) Input Leakage, LO (IIL) High Level Output Voltage (VOH), IOH = 1 mA Low Level Output Voltage (VOL), IOL = 1 mA Input Capacitance GPIO Output Drive Min 2.0 Typ Max IOVDD 0.8 10 10 0.8 5 5 Unit V V A A V V pF mA
2.0
POWER
Table 4.
Parameter Supply Voltage Analog Voltage Digital Voltage PLL Voltage IOVDD Voltage Supply Current Analog Current (AVDD & PVDD) Digital Current (DVDD) PLL Current Analog Current, Reset Digital Current, Reset PLL Current, Reset Dissipation Operation (AVDD, DVDD, PVDD)2 Reset, all supplies
1 2
Comments
Min
Typ 3.3 1.8 3.3 3.3 65 40 TBD TBD TBD TBD 286.5 TBD
Max1
Unit V V V V
85 60
mA mA mA mA mA mA mW mW
Maximum specifications are measured across -xxC to xxC (case) and across VDD = xxx V to xxx V. Power dissipation does not include IOVDD power because the current draw from this supply is dependant on loads on the digital output pins.
TEMPERATURE RANGE
Table 5.
Parameter Functionality Guaranteed Min 0C Typ Max 70C Unit C Ambient
DIGITAL TIMING
Table 6 Digital Timing1
Parameter MASTER CLOCK tMP MCLK Period tMP MCLK Period tMP MCLK Period tMP MCLK Period SERIAL PORT tBIL INPUT_BCLK LO Pulse Width tBIH INPUT_BCLK HI Pulse Width tLIS INPUT_LRCLK Setup tLIH INPUT_LRCLK Hold Comments 512 fS mode 384 fS mode 256 fS mode 64 fS mode Min 36 48 73 291 40 40 10 10 Max 244 366 488 1953 Unit ns ns ns ns ns ns ns ns
To INPUT_BCLK rising From INPUT_BCLK rising
Rev. PrF | Page 5 of 43
ADAU1701
tSIS tSIH tLOS tLOH tTS SDATA_INx Setup SDATA_INx Hold OUTPUT_LRCLK Setup OUTPUT_LRCLK Hold OUTPUT_BCLK Falling to OUTPUT_LRCLK Timing Skew SDATA_OUTx Delay SDATA_OUTx Delay To BCLK_IN rising From BCLK_IN rising Slave mode Slave mode 10 10 10 10
Preliminary Technical Data
ns ns ns ns ns Slave mode, from OUTPUT_BCLK falling Master mode, from OUTPUT_BCLK falling TBD TBD TBD TBD TBD TBD TBD TBD 400 0.6 1.3 0.6 0.6 100 300 300 300 300 Between Stop and Start 0.6 TBD TBD 1.5 x 1/fs 20 ns ns s ns 40 40 ns ns ns ns ns ns ns ns ns ns kHz s s s s ns ns ns ns ns
tSODS tSODM SPI PORT tCCPL CCLK Pulse Width LO tCCPH CCLK Pulse Width HI tCLS CLATCH Setup tCLH CLATCH Hold tCLPH CLATCH Pulse Width HI tCDS CDATA Setup tCDH CDATA Hold tCOD COUT Delay I2C PORT fSCL SCL Clock Frequency tSCLH SCL High tSCLL SCL Low tSCS Setup Time tSCH Hold Time tDS Data Setup Time tSCR SCL Rise Time tSCF SCL Fall Time tSDR SDA Rise Time tSDF SDA Fall Time tBFT Bus-Free Time MULTIPURPOSE PINS & RESET tGRT GPIO Rise Time tGFT GPIO Fall Time tGIL GPIO Input Latency tRLPW RESETB LO Pulse Width
To CCLK rising From CCLK rising To CCLK rising From CCLK rising From CCLK rising
Relevant for Repeated Start Condition After this period the 1st clock is generated
Until high/low value read by core
1 All timing specifications are given for the default (I2S) states of the serial input control port and the serial output control ports. See Table 45.
PLL
Table 7.
Parameter Operating Range Lock Time Min TBD Typ Max TBD 20 Unit MHz ms
REGULATOR1
Table 8.
Parameter DVDD Voltage
1
Min
Typ 1.8
Max
Unit V
Regulator specifications are calculated using an FZT953 transistor in the circuit.
Rev. PrF | Page 6 of 43
Preliminary Technical Data ABSOLUTE MAXIMUM RATINGS
Table 9.
Parameter DVDD to GND AVDD to GND IOVDD to GND Digital Inputs Maximum Junction Temperature Storage Temperature Range Soldering (10 sec) Min 0 0 0 DGND - 0.3 -65 Max 2.2 4.0 4.0 IOVDD + 0.3 135 +150 300 Unit V V V V C C C
ADAU1701
Stresses above those listed under Absolute Maximum Ratings may cause permanent damage to the device. This is a stress rating only; functional operation of the device at these or any other conditions above those indicated in the operational section of this specification is not implied. Exposure to absolute maximum rating conditions for extended periods may affect device reliability.
Table 10. Package Characteristics
Parameter JA Thermal Resistance (Junction-to-Ambient) JC Thermal Resistance (Junction-to-Case) Min Typ 72 19.5 Max Unit C/W C/W
ESD CAUTION
ESD (electrostatic discharge) sensitive device. Electrostatic charges as high as 4000 V readily accumulate on the human body and test equipment and can discharge without detection. Although this product features proprietary ESD protection circuitry, permanent damage may occur on devices subjected to high energy electrostatic discharges. Therefore, proper ESD precautions are recommended to avoid performance degradation or loss of functionality.
Rev. PrF | Page 7 of 43
ADAU1701 TYPICAL PERFORMANCE CHARACTERISTICS
ADC Decimation filter Passband Ripple, Fs = 48KHz 0.2 10 0 0.15 -10 0.1 -20 -30 -40 dB 0 dB -50 -0.05 -60 -70 -80 -0.15 -90 -0.2 -100
Preliminary Technical Data
DAC Total response, Fs = 48KHz
0.05
-0.1
0
0.2
0.4
0.6
0.8
1 1.2 Frequency
1.4
1.6
1.8
2
2.2 x 10
4
0
0.2
0.4
0.6
0.8
1 Frequency
1.2
1.4
1.6
1.8 x 10
2
5
Figure 2. ADC Passband Filter Response, fs=48 kHz
ADC Decimation filter Total Response, Fs = 48KHz 10 0 -10 -20 -30 -40 dB -50 -60 -70 -80 -90 -100
Figure 5. DAC Stopband Filter Response, fs=48 kHz
0
0.5
1
1.5
2
2.5 Frequency
3
3.5
4
4.5 x 10
4
Figure 3. ADC Stopband Filter Response, fs=48 kHz
DAC Passband response, Fs = 48KHz 0.1
Figure 6. ADC frequency response with 1 kHz, -60 dBFS input
0.08
0.06
0.04
0.02
dB
0
-0.02
-0.04
-0.06
-0.08
-0.1
0
0.5
1 Frequency
1.5
2 x 10
4
Figure 7. ADC frequency response with 1 kHz, 0 dBFS input
Figure 4. DAC Passband Filter Response, fs=48 kHz
Rev. PrF | Page 8 of 43
Preliminary Technical Data
ADAU1701
Figure 8. ADC Total Harmonic Distortion + Noise vs. frequency
Figure 11. DAC Total Harmonic Distortion + Noise vs. frequency
Figure 9. DAC frequency response with 1 kHz, -60 dBFS input
Figure 12. Crosstalk vs. frequency
Figure 10. DAC frequency response with 1 kHz, 0 dBFS input
Figure 13. PSRR vs. frequency
Rev. PrF | Page 9 of 43
ADAU1701 PIN CONFIGURATION AND FUNCTIONS
CM PLL_MODE1 PLL_MODE0 AGND VOUT3 AGND VOUT1 VOUT2 FILTA VOUT0 AVDD FILTD
Preliminary Technical Data
48 47 46 45 44 43 42 41 40 39 38 37
AGND ADC1 ADC_RES ADC0 RESETB SELFBOOT ADDR0 MP4 MP5 MP1 MP0 DGND
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
36 35 34 33 32
AVDD PLL_LF PVDD PGND MCLKI OSCO RSVD MP2 MP3 MP8 MP9 DGND
ADAU1701
TOP VIEW (Not to Scale)
31 30 29 28 27 26 25
MP11 ADDR1/CDATA/WB
Figure 14. 48-Lead LQFP Pin Configuration
Table 11. Pin Function Descriptions
Pin No. 1 Type1 PWR Mnemonic AGND Description AGND is an analog ground pin. The AGND, DGND, and PGND pins can be tied directly together in a common ground plane. AGND should be decoupled to an AVDD pin with a 100 nF capacitor. Analog input 1, full-scale 100 A rms input. Current input allows input voltage level to be scaled with an external resistor. ADC reference current. The full-scale current of the ADCs can be set with an external resistor connected between this pin and ground. Analog Input 0, full-scale 100 A rms input. Current input allows input voltage level to be scaled with an external resistor. RESETB is an active-low reset input. Reset is triggered on a high-to-low edge and the part will exit reset on a low-to-high edge. For detailed information about initialization, see the Power-Up Sequence section. SELFBOOT selects control port (0) or self-boot (1). Setting this pin high will initiate a selfboot operation when the ADAU1701 is brought out of reset. This pin can be tied directly to the control voltage or pulled up/down with a resistor. I2C and SPI Address 0, in combination with ADDR1will allow up to four ADAU1701s to be used on the same I2C bus and up to two ICs to be used with a common SPI CLATCH signal. Multi-Purpose - GPIO or Serial input port LRCLK (INPUT_LRCLK) Multi-Purpose - GPIO or Serial input port BCLK (INPUT_BCLK) Multi-Purpose - GPIO or Serial Input port data 1 (SDATA_IN0) Multi-Purpose - GPIO or Serial Input port data 0 (SDATA_IN1) DGND is a digital ground pin. The AGND, DGND, and PGND pins can be tied directly together in a common ground plane. DGND should be decoupled to a DVDD pin with a 100 nF capacitor. 1.8 V Digital Supply. This can be supplied either externally or generated from a 3.3 V supply with the on-board 1.8 V regulator. DVDD should be decoupled to
Rev. PrF | Page 10 of 43
2 3 4 5
A_IN A_IN A_IN D_IN
ADC1 ADC_RES ADC0 RESETB
6
D_IN
SELFBOOT
7
D_IN
ADDR0
8 9 10 11 12
D_IO D_IO D_IO D_IO PWR
MP4 MP5 MP1 MP0 DGND
13
PWR
DVDD
CLATCH/WP SDA/COUT
SCL/CCLK DVDD
DVDD
MP10 VDRIVE
IOVDD
MP7 MP6
Preliminary Technical Data
14 15 16 17 18 D_IO D_IO D_IO A_OUT PWR MP7 MP6 MP10 VDRIVE IOVDD
ADAU1701
DGND with a 100 nF capacitor. Multi-Purpose - GPIO or Serial output port data 1 (SDATA_OUT1) Multi-Purpose - GPIO, Serial output port data 0, or TDM data output (SDATA_OUT0) Multi-Purpose - GPIO or Serial output port LRCLK (OUTPUT_LRCLK) Drive for 1.8 V regulator. The base of the voltage regulator's external PNP transistor is driven from VDRIVE. Input and Output pins supply. The voltage on this pin sets the highest input voltage that should be seen on the digital input pins. This pin is also the supply for the digital output signals on the control port and MP pins. IOVDD should always be set to 3.3 V. The current draw of this pin is variable because it is dependant on the loads of the digital outputs. Multi-Purpose - GPIO or Serial output port BCLK (OUTPUT_BCLK) ADDR1: I2C Address 1, in combination with ADDR0 it will set the I2C address of the IC. Four ADAU1701s to be used on the same I2C bus. CDATA: SPI Data Input WB: EEPROM Writeback trigger. A rising (default) or falling (if set in the EEPROM messages) edge on this pin will trigger a write-back of the interface registers to the external EEPROM. This function can be used to save parameter data on power-down. CLATCH: This SPI latch signal must go low at the beginning of an SPI transaction and high at the end of a transaction. Each SPI transaction may take a different number of CCLKs to complete, depending on the address and read/write bit that are sent at the beginning of the SPI transaction. WP: Self-boot EEPROM write protect. This pin is an open collector output when in selfboot mode. The ADAU1701 will pull this low to prohibit writes to an external EEPROM. This pin should be pulled high to 3.3 V. SDA: This I2C data pin is a bidirectional open collector. The line connected to this pin should have a 2.2 k pull-up resistor. COUT: This SPI data output is used for reading back registers and memory locations. It is three-stated when an SPI read is not active. SCL: This I2C clock pin is always an open collector input when in I2C control mode. In self-boot mode this pin will be an open collector output (I2C master). The line connected to this pin should have a 2.2 k pull-up resistor. CCLK: This SPI clock may either run continuously or be gated off in between SPI transactions. 1.8 V Digital Supply. This can be supplied either externally or generated from a 3.3 V supply with the on-board 1.8 V regulator. DVDD should be decoupled to DGND with a 100 nF capacitor. DGND is a digital ground pin. The AGND, DGND, and PGND pins can be tied directly together in a common ground plane. dGND should be decoupled to a DVDD pin with a 100 nF capacitor. Multi-Purpose - GPIO, serial output port data 3 (SDATA_OUT3), or auxiliary ADC input 0 Multi-Purpose - GPIO, serial output port data 2 (SDATA_OUT2), or auxiliary ADC input 3 Multi-Purpose - GPIO, serial input port data 3 (SDATA_IN3), or auxiliary ADC input 2 Multi-Purpose - GPIO, serial input port data 2 (SDATA_IN2), or auxiliary ADC input 1 Reserved, tie to ground, either directly or through a pull-down resistor. OSCO is the output of the crystal oscillator circuit. A 100 damping resistor should be connected between this pin and the crystal. This output should not be used to directly drive a clock to another IC. If the crystal oscillator is not used, this pin can be left unconnected. MCLKI can either be connected to a 3.3 V clock signal or can be the input from the crystal oscillator circuit. PGND is the PLL ground pin. The AGND, DGND, and PGND pins can be tied directly together in a common ground plane. PGND should be decoupled to
Rev. PrF | Page 11 of 43
19 20
D_IO D_IN
MP11 ADDR1/CDATA/WB
21
D_IN
CLATCH / WP
22
D_IO
SDA/COUT
23
D_IO
SCL/CCLK
24
PWR
DVDD
25
PWR
DGND
26 27 28 29 30 31
D/A_IO D/A_IO D/A_IO D/A_IO X D_OUT
MP9 MP8 MP3 MP2 RSVD OSCO
32 33
D_IN PWR
MCLKI PGND
ADAU1701
34 35 36 37 PWR A_OUT PWR PWR PVDD PLL_LF AVDD AGND
Preliminary Technical Data
PVDD with a 100 nF capacitor. PVDD is the 3.3 V power supply for the PLL and the auxiliary ADC's analog section. This should be decoupled to PGND with a 100 nF capacitor. PLL Loop Filter connection. Two capacitors and a resistor need to be connected to this pin as shown in the Setting Master Clock/PLL Mode section. AVDD is a 3.3 V Analog Supply. This should be decoupled to AGND with a 100 nF capacitor. AGND is an analog ground pin. The AGND, DGND, and PGND pins can be tied directly together in a common ground plane. AGND should be decoupled to an AVDD pin with a 100 nF capacitor. PLL_MODE0 and PLL_MODE1 set the output frequency of the master clock PLL. See the Setting Master Clock/PLL Mode section for more details. CM is the common mode reference. A 47 F decoupling capacitor should be connected between this pin and ground to reduce crosstalk between the ADCs and DACs. The capacitor's material is not critical. FILTD is the DAC filter decoupling pin, which should be connected to a 10 F capacitor to ground. The capacitor's material is not critical. AGND is an analog ground pin. The AGND, DGND, and PGND pins can be tied directly together in a common ground plane. AGND should be decoupled to an AVDD pin with a 100 nF capacitor. VOUT0-3 are the DAC outputs. Full-scale output voltage is 0.9 Vrms. These outputs can be used with either active or passive output reconstruction filters.
38 39 40
D_IN D_IN A_OUT
PLL_MODE0 PLL_MODE1 CM
41 42
A_OUT PWR
FILTD AGND
43 44 45 46 47 48
A_OUT A_OUT A_OUT A_OUT A_OUT PWR
VOUT3 VOUT2 VOUT1 VOUT0 FILTA AVDD
FILTA is the ADC filter decoupling pin, which should be connected to a 10 F capacitor to ground. The capacitor's material is not critical. AVDD is a 3.3 V Analog Supply. This should be decoupled to AGND with a 100 nF capacitor.
1
PWR = Power/Ground, A_IN = analog input, D_IN = digital input, A_OUT = analog output, D_IO = digital input/output, D/A_IO = digital/analog input/output
Rev. PrF | Page 12 of 43
Preliminary Technical Data OVERVIEW
The core of the ADAU1701 is a 28-bit DSP (56-bit with double precision) optimized for audio processing. The program and parameter RAMs can be loaded with a custom audio processing signal flow built with ADI's SigmaStudio graphical programming software. The values stored in the parameter RAM control individual signal processing blocks, such as IIR equalization filters, dynamics processors, audio delays, and mixer levels. A safeload feature allows parameters to be transparently updated without causing clicks on the output signals. The program RAM, parameter RAM, and register contents can be saved in an external EEPROM, from which the ADAU1701 can self-boot on start-up. In this stand-alone mode, parameters can be controlled through the on-board multipurpose pins. The ADAU1701 can accept controls from switches, potentiometers, rotary encoders, and IR receivers. Parameters such as volume and tone settings can be saved to the EEPROM on power-down and recalled when it is powered up again. The ADAU1701 can operate with either digital I/Os, analog I/Os, or a mix of both. The stereo ADC and four-channel DAC each have an SNR of at least 100 dB and THD+N of at least 80 dB. The flexible serial data input/output ports allow for glueless interconnection to a variety of ADCs, DACs, generalpurpose DSPs, S/PDIF receivers & transmitters, and sample rate converters. The ADAU1701 can be configured in I2S, leftjustified, right-justified, or TDM serial port compatible modes. Twelve multi-purpose (MP) pins allow for the ADAU1701 to input external control signals and output flags or controls to other devices in the system. These MP pins can be configured as digital I/Os, inputs to the 4-channel auxiliary ADC, or set up as the serial data I/O ports. As inputs, they can be connected to buttons, switches, rotary encoders, potentiometers, IR receivers, or other external control circuitry to control the internal signal processing program. When configured as outputs, these pins can be used to drive LEDs (with a buffer), control other ICs, or connect to other external circuitry in an application. The ADAU1701 has a sophisticated control port that supports complete read/write capability of all memory locations. Control registers are provided to offer complete control of the chip's configuration and serial modes. Handshaking is included for ease of memory uploads and downloads. The ADAU1701 can be configured for either SPI or I2C control. An on-board oscillator can be connected to an external crystal to generate the master clock. Also, a master clock phase-locked loop (PLL) allows the ADAU1701 to be clocked from a variety of different clock speeds. The PLL can accept inputs of 64 x fS,
ADAU1701
256 x fS, 384 x fS, or 512 x fS to generate the core's internal master clock. The SigmaStudio software is used to program and control the SigmaDSP through the control port. Along with designing and tuning a signal flow, the tools can configure the all registers and burn a new program into the external EEPROM. SigmaStudio's graphical interface allows anyone with digital or analog audio processing knowledge to easily design a DSP signal flow and port it to a target application. It also provides enough flexibility and programmability for an experienced DSP programmer to have in-depth control of the design. In SigmaStudio, the user can simply connect graphical blocks such as biquad filters, dynamics processors, mixers, and delays, compile the design, and load the program and parameter files into the ADAU1701's memory through the control port. Signal processing blocks available in the provided libraries include * * * * * * * * * * * * Single- and double-precision biquad filters Mono and multichannel dynamics processors with peak or RMS detection Mixers and splitters Tone and noise generators Fixed and variable gain Loudness Delay Stereo enhancement Dynamic bass boost Noise and tone sources Level detectors GPIO control & conditioning
More processing blocks are always in development. Analog Devices also provides proprietary and third-party algorithms for applications such as matrix decoding, bass enhancement, and surround virtualizers. Please contact ADI for information about licensing these algorithms. The ADAU1701 operates from a 1.8 V digital power supply and a 3.3 V analog supply. An on-board voltage regulator can be used to operate the chip from a single 3.3 V supply. It is fabricated on a single monolithic integrated circuit and is housed in a 48-lead LQFP package for operation over the -0C to +70C temperature range.
Rev. PrF | Page 13 of 43
ADAU1701 INITIALIZATION
POWER-UP SEQUENCE
The ADAU1701 has a built-in power-up sequence that initializes the contents of all internal RAMs on power-up or when the part is brought out of reset. After RESETB (positive edge-triggered) goes high, the contents of the internal program boot ROM are copied to the internal program RAM memory, the parameter RAM (all zeros) is filled with values from its associated boot ROM, and all registers are initialized to allzeros. The default boot ROM program simply copies inputs to outputs with no processing (Figure 15). In this program, serial digital inputs 0-1 are output on DACs 0-1 and serial digital outputs 0-1. ADCs 0-1 are output on DACs 2-3. The data memories are also zeroed at power-up. New values should not be written to the control port until the initialization is complete. Table 12. Power-up time
MCLKI input Init. time Maximum Program/ Parameter/ Register Boot Time (I2C) 175 ms 175 ms 175 ms 175 ms 175 ms Total
Preliminary Technical Data
1.
Assert bits 3 and 4 (active low) of the core control register to mute the ADCs and DACs. This begins a volume rampdown. Assert bit 2 (active low) of the core control register. This zeroes the SigmaDSP's accumulators, the data output registers, and the data input registers. Fill the program RAM using burst-mode writes. Fill the parameter RAM using burst-mode writes. Deassert bits 2-4 of the core control register.
2.
3. 4. 5.
DAC0 SD ATA_IN 0 DAC1
260 ms 198 ms 196 ms 191 ms 186 ms
SD ATA_OUT 0
3.072 MHz (64 x fs) 11.289 MHz (256 x fs) 12.288 MHz (256 x fs) 18.432 MHz (384 x fs) 24.576 MHz (512 x fs)
85 ms 23 ms 21 ms 16 ms 11 ms
ADC0
DAC2
The PLL start-up time lasts for 218 cycles of the clock on the MCLKI pin. This time will range from 10.7 ms for a 24.576 MHz (512 x fs) input clock to 85.3 ms for a 3.072 MHz (64 x fs) input clock. This start-up time is measured from the rising edge of RESETB. Following the PLL start-up the ADAU1701's boot cycle takes 2048 cycles of the internal master clock (49.152 MHz at fs = 48 kHz). The user should avoid writing to or reading from the ADAU1701 during this start-up time. For a 12.288 MHz input MCLK, the full initialization sequence (PLL start-up plus boot cycle) will last approximately 22 ms. Coming out of reset, the clock mode is immediately set by the PLL_MODE0 and PLL_MODE1 pins. Reset is synched to the falling edge of the internal MCLK. Table 12 shows examples of typical times to boot the ADAU1701 into an application's operational state, assuming a 400 kHz I2C clock loading a full program, parameter set, and all registers (8.5 kB). In reality, most applications will use less than this full amount, so the boot time (column 3) will be shorter.
ADC1
DAC3
Figure 15. Default Program Signal Flow
POWER REDUCTION MODES
Sections of the ADAU1701 chip can be turned on and off as needed to reduce power consumption. These include the ADCs, DACs, and voltage reference. The individual analog sections can be turned off in the Auxiliary ADC & Power Control Register (2082). By default, the ADCs, all four DACs, and reference are enabled (all bits set to 0). Each of these can be turned off by writing a 1 to the appropriate bits in this register. The ADC power-down mode will power down both ADCs and each DAC can be powered down individually. The current savings will be about 15 mA when the ADCs are powered down, and about 4 mA for each powered-down DAC. The voltage reference, which is supplied to both the ADCs and DACs, should only be powered down if the ADCs and all four DACs are also powered down. The reference is powered down by setting both bits 6 and 7 of the control register.
RECOMMENDED PROGRAM/PARAMETER LOADING PROCEDURE
When writing large amounts of data to the program or parameter RAM in direct write mode, the processor core should be disabled to prevent unpleasant noises from appearing at the audio output.
USING THE OSCILLATOR
The ADAU1701 has an on-board oscillator that can be used to generate the part's master clock. The oscillator is designed to work with a 256 x fs master clock, which will be 12.288 MHz for
Rev. PrF | Page 14 of 43
Preliminary Technical Data
fs = 48 kHz and 11.2896 MHz for fs = 44.1 kHz. The crystal in the oscillator circuit should be an AT-cut parallel resonance device operating at its fundamental frequency. Figure 16 shows the recommended external circuit for proper operation.
C1 ADAU1701 100 OS CO
ADAU1701
fs. On power-up, a clock signal must be present on MCLK so that the ADAU1701 can complete its initialization routine. Table 14. PLL Modes
MCLKI Input 64 x fS 256 x fS 384 x fS 512 x fS PLL_MODE0 0 0 1 1 PLL_MODE1 0 1 0 1
C2 MCLKI
Figure 16. Crystal oscillator circuit
The 100 damping resistor on OSCO will give the oscillator a voltage swing of approximately 2.2 V. The crystal's shunt capacitance should be 7 pF. Its load capacitance should be about 18 pF, although the circuit will support values up to 25 pF. The necessary values of the load capacitors C1 and C2 can be calculated from the crystal's load capacitance with the equation:
The clock mode should not be changed without also resetting the ADAU1701. If the mode is changed on the fly, a click or pop may result on the outputs. The state of the PLL_MODEx pins should be changed while RESETB is held low. The PLL's loop filter should be connected to the PLL_LF pin. This filter, shown in Figure 17, includes three passive components - two capacitors and a resistor. The values of these components does not need to be exact; the tolerance can be up to 10% for the resistor and 20% for the capacitors. The 3.3 V signal shown in the schematic can be connected to the chip's AVDD supply.
3.3V
CL =
C1 x C2 + Cstray C1 + C2
Cstray is the stray capacitance in the circuit and can usually be assumed to be 2-5 pF. OSCO should not be used to directly drive the crystal's signal to another IC. If the oscillator is not being used in the design it can be powered down to save system power. This would be done in a case where a system master clock is already available in the system. By default, the oscillator is powered on. The oscillator will power down when a 1 is written to bit 2 of the Oscillator Power-down Register (2086), as shown in Table 13. Table 13. Oscillator Power-down Register (2086)
Register Bits 15:3 2 1:0 Function Reserved, set to 0 Oscillator power-down Reserved, set to 0
3.3 nF
475 56 nF
ADAU170 1 PLL_LF
Figure 17. PLL Loop Filter
VOLTAGE REGULATOR
The ADAU1701's digital voltage must be set to 1.8 V. The chip includes an on-board voltage regulator that allows it to be used in systems where a 1.8 V supply is not available, but 3.3 V is. The only external components needed for this are a PNP transistor, one resistor, and bypass capacitors. Only one pin, VDRIVE, is necessary to support the regulator. The recommended design for the voltage regulator is shown in Figure 18. The 10 F and 100 nF capacitors shown in this schematic are recommended for bypassing, but are not necessary for operation. Each DVDD pin should have its own 100 nF bypassing capacitor, but only one bulk capacitor (10 F) is needed for all pins. Here, 3.3 V is the main system voltage. 1.8 V is generated at the transistor's collector, which is connected to the DVDD pins. VDRIVE is connected to the base of the PNP transistor. If the regulator is not used in the design VDRIVE can be tied to ground.
SETTING MASTER CLOCK/PLL MODE
The ADAU1701's MCLK input feeds a PLL, which generates the 1024 x fs clock (49.152 MHz at fs = 48 kHz) to run the DSP core. In normal operation, the input to MCLK must be one of the following: 64 x fs, 256 x fs, 384 x fs, or 512 x fs, where fs is the input sampling rate. The mode is set on PLL_MODE0, and PLL_MODE1, according to Table 14. If the ADAU1701 is set to receive double-rate signals (by reducing the number of program steps/sample by a factor of 2 using the core control register), then the master clock frequencies must be either 32 x fs, 128 x fs , 192 x fs, or 256 x fs. If the ADAU1701 is set to receive quadrate signals (by reducing the number of program steps/sample by a factor of 4 using the core control register), then the master clock frequencies must be one of 16 x fs, 64 x fs, 96 x fs, or 128 x
Rev. PrF | Page 15 of 43
ADAU1701
3.3V 10 uF 100 nF 1 k
Preliminary Technical Data
amplification factor (hFE or beta) should be at least 100. Second, the transistor's collector needs to be able to dissipate the heat generated when regulating from 3.3 V to 1.8 V. The maximum digital current draw of the ADAU1701 is 60 mA. The equation to determine the transistor's minimum power dissipation specs is as follows: (3.3 V - 1.8 V) x 60 mA = 90 mW There are many transistors with these specifications available in small packages (i.e. SOT-23 or SOT-223), such as the 2N3906 or FZT953.
ADAU170 1 DVDD VDRIVE
Figure 18. Voltage Regulator Design
Two specifications need to be taken into consideration when choosing a regulator transistor. First, the transistor's current
Rev. PrF | Page 16 of 43
Preliminary Technical Data TWO-CHANNEL AUDIO ADC
The ADAU1701 has a two-channel - ADC. The SNR of the ADCs is 100 dB and the THD+N is -80 dB. The stereo audio ADCs are current-input, so a voltage-tocurrent resistor is required on the inputs. This means that the voltage level of the input signals to the system can be set to any level; only the input resistors need to scale to provide the proper full-scale current input. The input pins ADC0 and ADC1, as well as ADC_RES have an internal 2 k resistor for ESD performance. The external resistor connected to ADC_RES sets the full-scale current input of the ADCs. The full range of the ADC inputs is 100 Arms and this setting is given with an external 18 k resistor (20 k total, because it is in series with the internal 2 k). The voltage seen directly on the ADC input pins will be the 1.5 V common mode. The voltage-to-current resistors connected to ADC0/1 set the full-scale voltage input to the ADCs. With a full-scale current input of 100 Arms, a 2.0 Vrms signal with an external 18 k resistor (in series with the 2 k internal resistor) will give an input using the full range of the ADC. There should not be any need in an application to reduce the ADC's full-scale input by increasing the value of the resistor on ADC_RES. Either input pins ADC0 and/or ADC1 can be left unconnected if that channel of the ADC is unused. These calculations of resistor values all assume a 48 kHz sample rate. The recommended input and current setting resistors will
ADAU1701
scale directly with the sample rate because the ADCs have a switched-capacitor input. The total value (2 k internal plus external resistor) of the ADC_RES resistor with sample rate fs_new can be calculated by:
Rtotal = 20k x
48000 f s _ new
The values of the resistors on the ADCx inputs can be calculated by:
Rinput _ total = (rms _ input _ voltage) x 10k x
48000 f s _ new
Figure 19 shows a typical configuration of the ADC inputs for a 2.0 Vrms input signal. The 47 F capacitors are used to accouple the signals so that the inputs are biased at 1.5 V.
ADAU1701 47 uF 18 k ADC0
47 uF
18 k
ADC1
18 k
ADC_RE
Figure 19. Audio ADC input schematic
Rev. PrF | Page 17 of 43
ADAU1701 FOUR-CHANNEL AUDIO DAC
The ADAU1701's main output is a four-channel - DAC. The SNR of the DAC is 104 dB and the THD+N is -90 dB. A fullscale output on the DACs is 0.9 Vrms (2.5 Vp-p). The DACs are in an inverting configuration. If a signal inversion from input to output is undesirable, this can be reversed by using either an inverting configuration in the output filter, or by simply inverting the signal in the SigmaDSP program flow. The DAC outputs can be filtered with either an active or a passive reconstruction filter. A single-pole low-pass filter with a 50 kHz corner frequency, as shown in Figure 20, is sufficient to
Preliminary Technical Data
filter the DAC's out-of-band noise, although an active filter may provide better audio performance. Figure 21 shows a 3-pole active low-pass filter that will provide a steeper roll-off and better stop-band attenuation than the passive filter.
Figure 20. DAC output filter - passive
Figure 21. DAC output filter - active
Rev. PrF | Page 18 of 43
Preliminary Technical Data CONTROL PORT
OVERVIEW
The ADAU1701 can operate in one of three control modes: * * * I2C Control SPI Control Selfboot (no external controller)
ADAU1701
then transfer these parameters into the active program within one audio frame. The safeload mode uses internal logic to prevent contention between the DSP core and the control port. The control port pins are multi-functional according to which mode in which the part is operating. details these different functions.
I2C PORT
The ADAU1701 supports a 2-wire serial (I2C compatible) microprocessor bus driving multiple peripherals. Two pins, serial data (SDA) and serial clock (SCL), carry information between the ADAU1701 and the system I2C master controller. In I2C mode the ADAU1701 is always a slave on the bus, which means that it will never initiate a data transfer. Each slave device is recognized by a unique address. The address byte format is shown in Table 15. The ADAU1701 has four possible slave addresses: two for writing operations and two for reading. These are unique addresses for the device and are illustrated in Table 16. The LSB of the byte sets either a read or write operation; Logic Level 1 corresponds to a read operation, and Logic Level 0 corresponds to a write operation. The sixth and seventh bits of the address are set by tying the ADDRx pins of the ADAU1701 to logic level 0 or logic level 1. Both SDA and SCL should have 2.2 k pull-up resistors on the lines connected to them. The voltage on these signal lines should not be above IOVDD (3.3 V). Table 15. ADAU1701 Address Byte Format
Bit 0 0 Bit 1 1 Bit 2 1 Bit 3 0 Bit 4 1 Bit 5 ADDR1 Bit 6 ADDR0 Bit 7 R/W
The ADAU1701 has both a 4-wire SPI control port, and a 2wire I2C bus control port that can each be used to set the part's RAMs and registers. When selfboot mode is not selected at power-up, the part defaults to I2C mode, but can be put into SPI control mode by pulling pin CLATCH/WP low three times. When the SELFBOOT pin is set high, the ADAU1701 will load its program, parameters, and registers settings from an external EEPROM on start-up. The control port is capable of full read/write operation for all of the memories and registers. Most signal processing parameters are controlled by writing new values to the parameter RAM using the control port. Other functions, such as mute and input/output mode control, are programmed by writing to the control registers. All addresses may be accessed in both a single-address mode or a burst mode. A control word consists of the chip address, the register/RAM subaddress, and the data to be written. The number of bytes per word depends on the type of data that is written. The first byte of a control word (Byte 0) contains the 7-bit chip address plus the R/W bit. The next two bytes (Bytes 1 and 2) together form the subaddress of the memory or register location within the ADAU1701. This subaddress needs to be two bytes because the memories within the ADAU1701 are directly addressable, and their sizes exceed the range of singlebyte addressing. All subsequent bytes (Bytes 3, 4, etc.) contain the data, such as control port data or program or parameter data. The exact formats for specific types of writes are shown in Table 27 to Table 35. The ADAU1701 has several mechanisms for updating signal processing parameters in real time without causing pops or clicks. In cases where large blocks of data need to be downloaded, the output of the DSP core can be halted (using Bit x of the core control register), new data loaded, and then restarted. This is typically done during the booting sequence at start-up or when loading a new program into RAM. In cases where only a few parameters need to be changed, they can be loaded without halting the program. To avoid unwanted side effects while loading parameters on the fly, the SigmaDSP provides the safeload registers. The safeload registers can be used to buffer a full set of parameters (e.g. the five coefficients of a biquad) and
Table 16. ADAU1701 I2C Addresses
ADDR1 0 0 0 0 1 1 1 1 ADDR0 0 0 1 1 0 0 1 1 Read/Write 0 1 0 1 0 1 0 1 Slave Address 0x68 0x69 0x6A 0x6B 0x6C 0x6D 0x6E 0x6F
Addressing
Initially, all devices on the I2C bus are in an idle state, which is where the devices monitor the SDA and SCL lines for a start condition and the proper address. The I2C master initiates a data transfer by establishing a Start condition, defined by a high-to-low transition on SDA while SCL remains high. This indicates that an address/data stream will follow. All devices on the bus respond to the start condition and shift the next eight bits (7-bit address + R/W bit) MSB first. The device that recognizes the transmitted address responds by pulling the data
Rev. PrF | Page 19 of 43
ADAU1701
line low during the ninth clock pulse. This ninth bit is known as an acknowledge bit. All other devices withdraw from the bus at this point and return to the idle condition. The R/W bit determines the direction of the data. A logic 0 on the LSB of the first byte means the master will write information to the peripheral. A logic 1 on the LSB of the first byte means the master will read information from the peripheral. A data transfer takes place until a stop condition is encountered. A stop condition occurs when SDA transitions from low to high while SCL is held high. Figure 22 shows the timing of an I2C write. Burst mode addressing, where the subaddresses are automatically incremented at word boundaries, can be used for writing large amounts of data to contiguous memory locations. This increment happens automatically if a stop condition is not encountered after a single-word write. The registers and memories in the ADAU1701 range in width from one to five bytes, so the autoincrement feature knows the mapping between sub-addresses and the word length of the destination register (or memory location). A data transfer is always terminated by a stop condition. Stop and start conditions can be detected at any stage during the data transfer. If these conditions are asserted out of sequence with normal read and write operations, these cause an immediate jump to the idle condition. During a given SCL high period, the user should only issue one start condition, one stop condition, or a single stop condition followed by a single start condition. If an invalid subaddress is issued by the user, the ADAU1701 does not issue an acknowledge and returns to the idle condition. If the user exceeds the highest subaddress while in autoincrement mode, one of two actions will be taken. In read mode, the ADAU1701 outputs the highest subaddress register contents until the master device issues a noacknowledge, indicating the end of a read. A no-acknowledge condition is where the SDA line is not pulled low on the ninth clock pulse on SCL. If the highest subaddress location is reached while in write mode, the data for the invalid byte is not loaded into any subaddress register, a no-acknowledge is issued by the ADAU1701, and the part returns to the idle condition.
Preliminary Technical Data
write operation. This is because the subaddress still needs to be written in order to set up the internal address. After the ADAU1701 acknowledges the receipt of the subaddress, the master must issue a repeated start command followed by the chip address byte with the R/W set to 1 (read). This causes the ADAU1701's SDA to turn around and begin driving data back to the master. The master then responds every ninth pulse with an acknowledge pulse to the ADAU1701. Figure 27 shows the timing of a burst-mode read sequence. This figure shows an example where the target read registers are two bytes. The ADAU1701 knows to increment its subaddress register every two bytes because the requested subaddress corresponds to a register or memory area with word lengths of two bytes. Other address ranges may have a variety of word lengths ranging from one to five bytes; the ADAU1701 always decodes the subaddress and sets the autoincrement circuit so that the address increments after the appropriate number of bytes.
SPI PORT
By default, the ADAU1701 is in I2C mode, but can be put into SPI control mode by pulling CLATCH/WP low three times. The SPI port uses a 4-wire interface, consisting of CLATCH, CCLK, CDATA, and COUT signals. The CLATCH signal goes low at the beginning of a transaction and high at the end of a transaction. The CCLK signal latches CDATA on a low-to-high transition. COUT data is shifted out of the ADAU1701 on the falling edge of CCLK and should be clocked into the receiving device, such as a microcontroller, on CCLK's rising edge. The CDATA signal carries the serial input data, and the COUT signal is the serial output data. The COUT signal remains threestated until a read operation is requested. This allows other SPIcompatible peripherals to share the same readback line. All SPI transactions follow the same basic format, shown in Table 17. A timing diagram is shown in Figure 39. All data written should be MSB-first. Table 17. Generic Control Word Format
Byte 0 chip_adr [6:0], R/W Byte 1 0000, subadr [11:8] Byte 2 subadr[7:0] Byte 3 data Byte 4, etc. data
I2C Read & Write Operations
Figure 24 shows the timing of a single-word write operation. Every ninth clock, the ADAU1701 issues an acknowledge by pulling SDA low. Figure 25 shows the timing of a burst mode write sequence. This figure shows an example where the target destination registers are two bytes. The ADAU1701 knows to increment its subaddress register every two bytes because the requested subaddress corresponds to a register or memory area with a 2-byte word length. The timing of a single word read operation is shown in Figure 26. Note that the first R/W bit is still a 0, indicating a
Chip Address R/W
The first byte of an SPI transaction includes the 7-bit chip address and a R/W bit. The chip address is set by the ADR_SEL pin. This allows two ADAU1701s to share a CLATCH signal, yet still operate independently. When ADR_SEL0 is low, the chip address is 0000000; when it is high, the address is 0000001. The LSB of this first byte determines whether the SPI transaction is a read (Logic Level 1) or a write (Logic Level 0).
Rev. PrF | Page 20 of 43
Preliminary Technical Data
Subaddress
The 12-bit Subaddress word is decoded into a location in one of the memories or registers. This subaddress is the location of the appropriate RAM location or register.
ADAU1701
format diagram for continuous-mode operation is given in the Control Port Read/Write Data Formats section. A sample timing diagram for a single SPI write operation to the parameter RAM is shown in Figure 28. A sample timing diagram of a single SPI read operation is shown in Figure 29. The COUT pin goes from three-state to driven at the beginning of Byte 3. In this example, Bytes 0 to 2 contain the addresses and R/W bit, and subsequent bytes carry the data.
Data Bytes
The number of data bytes varies according to the register or memory being accessed. In burst write mode, an initial subaddress is given followed by a continuous sequence of data for consecutive memory/register locations. The detailed data
SCK
SDA START BY MASTER
0
0
0
0
0
0
ADR SEL
R/W ACK. BY ADAU1701 ACK. BY ADAU1701 FRAME 2 SUBADDRESS BYTE 1
FRAME 1 CHIP ADDRESS BYTE
SCK (CONTINUED)
SDA (CONTINUED) FRAME 2 SUBADDRESS BYTE 2
ACK. BY ADAU1701
FRAME 3 DATA BYTE 1
ACK. BY STOP BY ADAU1701 MASTER
Figure 22. ADAU1701 I2C Write Clocking
SCK
SDA START BY MASTER
ADR SEL
R/W ACK. BY ADAU1701 ACK. BY ADAU1701 FRAME 2 SUBADDRESS BYTE 1
FRAME 1 CHIP ADDRESS BYTE
SCK (CONTINUED) SDA (CONTINUED) ACK. BY REPEATED ADAU1701 START BY MASTER ADR SEL
R/W ACK. BY ADAU1701
FRAME 3 SUBADDRESS BYTE 2
FRAME 4 CHIP ADDRESS BYTE
SCK (CONTINUED) SDA (CONTINUED) ACK. BY MASTER FRAME 5 READ DATA BYTE 1 FRAME 6 READ DATA BYTE 2 ACK. BY STOP BY MASTER MASTER
Figure 23. ADAU1701 I2C Read Clocking
Rev. PrF | Page 21 of 43
ADAU1701
S Chip Address, R/W = 0 AS Subaddress High AS Subaddress Low AS Data Byte 1 AS
Preliminary Technical Data
Data Byte 2 ... AS Data Byte N P
Figure 24. Single-Word I2C Write Format
S
Chip Address, R/W = 0
AS
Subaddres s High
AS
Subaddres s Low
AS
Data Word 1, Byte 1
AS
Data Word 1, Byte 2
AS
Data Word 2, Byte 1
AS
Data Word 2, Byte 2
AS
...P
Figure 25. Burst Mode I2C Write Format
S
Chip Address, R/W = 0
AS
Subaddress High
AS
Subaddress Low
AS
S
Chip Address, R/W = 1
AS
Data Byte 1
AM
Data Byte 2
...
AM
Data Byte N
P
Figure 26. Single Word I2C Read Format
S
Chip Address, R/W =0
AS
Subaddress High
AS
Subaddress Low
AS
S
Chip Address, R/W = 1
AS
Data Word 1, Byte 1
AM
Data Word 1, Byte 2
AM
...
P
Figure 27. Burst Mode I2C Read Format
S - Start Bit P - Stop Bit AM - Acknowledge by Master AS - Acknowledge by Slave
CLATCH
CCLK
04607-0-006
CDATA
BYTE 0
BYTE 1
BYTE 2
BYTE 3
Figure 28. SPI Write Clocking (Single-Write Mode)
CLATCH
CCLK
CDATA
BYTE 0
BYTE 1
04607-0-007
COUT
HI-Z
DATA
DATA
DATA
HI-Z
Figure 29. SPI Read Clocking (Single-Read Mode)
Table 18. Control Port/Selfboot Pin Functions
Pin SCL/CCLK SDA/COUT ADDR1/CDATA/WB CLATCH/WP ADDR0 I2C Mode SCL - input SDA - open collector output ADDR1 - input Unused input - tie to ground or VDD ADDR0 - input SPI Mode CCLK - input COUT - output CDATA - input CLATCH - input ADDR0 - input Selfboot SCL - output SDA - open collector output Writeback trigger EEPROM Write Protect - open collector output unused input - tie to ground or VDD
Rev. PrF | Page 22 of 43
Preliminary Technical Data
SELF BOOT
On power-up, the ADAU1701 can load a set of program and parameters that are saved in an external EEPROM. Combined with the auxiliary ADC and the multipurpose pins, this eliminates the need for a microcontroller in the system. The self-booting is accomplished by the ADAU1701 acting as a master on the I2C bus on start-up, which occurs when the Selfboot pin is set high. The ADAU1701 cannot self-boot in SPI mode. The maximum necessary EEPROM size is 9,248 bytes, or just over 9 kB. This much memory will only be needed if the program RAM (1024 x 5 bytes), parameter RAM (1024 x 4 bytes), and interface registers (8 x 4 bytes) are each completely full. In most applications, an 8 kB EEPROM will be sufficient. A selfboot operation is triggered on the rising edge of RESETB when the SELFBOOT and WP pins are set high. The ADAU1701 reads a program, parameters, and register settings from the EEPROM. Once the ADAU1701 has finished selfbooting, further messages may be sent to the ADAU1701 on the I2C bus, although this typically won't be necessary in a selfbooting application. The I2C device address is 0x68 for a write and 0x69 for a read in this mode. The ADDRx pins have different functions when the chip is in this mode, so the settings on them are ignored. The ADAU1701 will not selfboot if WP is set low. Holding this pin low allows the EEPROM to be programmed in-circuit. The WP pin must be pulled low (it will normally have a resistor pull-up) to enable writes to the EEPROM and this disables selfboot until WP is taken high. The ADAU1701 is a master on the I2C bus during selfboot and writeback. While it would be uncommon for an application using selfboot to also have a microcontroller in on the control lines, care should be taken that no other device tries to write to the I2C bus during selfboot or writeback. The ADAU1701 generates SCL at 8 x fs, so at fs = 48 kHz SCL will run at 384 kHz. SCL has a duty cycle of 3/8 in accordance with the I2C specification. The ADAU1701 reads from EEPROM chip address 0x61. The LSBs of the addresses of some EEPROMs are pin-configurable; in most cases these pins should be tied low to set this address shown here.
ADAU1701
which are used for writing to the ADAU1701's program RAM, parameter RAM, and control registers. The body of the message following the message type should start with a 0x00 byte - this is the chip address. After this there is always a 2-byte register/memory address field, as there are with all other control port transactions.
WriteBack
A writeback occurs when the WB pin is triggered and data is written to the EEPROM from the ADAU1701. This function is typically used to save volume and other parameter settings to the EEPROM just before power is removed from the system. A rising edge on the WB pin triggers a writeback when the ADAU1701 is in selfboot mode, unless a Set WB to Falling Edge Sensitive (0x05) message was contained in the selfboot message sequence. Only one write back will take place unless a Set Multiple Write Back (0x04) message was contained in the selfboot message sequence. The WP pin will be pulled low when a writeback is triggered in order to allow writing to the EEPROM. The ADAU1701 is only capable of writing back the contents of the interface registers to the EEPROM. These registers are usually set by the DSP program, but can also be written to directly after setting bit 6 of the Table 19. EEPROM Message Types
Message ID 0x00 0x01 Message Type End Write Following Bytes none 2 bytes indicating message length followed by appropriate number of data bytes 2 bytes for delay none none none none
0x02 0x03 0x04 0x05 0x06
Delay No-Op Set multiple write back Set WB to falling edge sensitive End and wait for writeback
EEPROM format
The EEPROM data contains a sequence of messages. Each discrete message will be one of the seven types defined in Table 19. Each message consists of a sequence of one or more bytes. The first byte identifies the message type. Bytes are written MSB-first. Most messages will be block write (0x01) types,
Rev. PrF | Page 23 of 43
ADAU1701
DSP Core Control Register. The parameter settings that should be saved are configured in SigmaStudio. The writeback functions by writing data from the ADAU1701's interface registers to the second page of the selfboot EEPROM, addresses 32-63. Starting at EEPROM address 26 (so that the interface register data begins at address 32), the EEPROM should be programmed with six bytes - the Message Byte (0x01), 2 length bytes, the chip address (0x00), the 2-byte subaddress for the interface registers (0x08 0x00). There must be a message to the DSP core control register to enable port writing to the interface registers prior to the interface register data in the EEPROM. This should be stored in EEPROM address 0. No-op messages (0x03) may be used in-between messages to ensure that these conditions are met. Table 20 shows an example of what should be stored in the EEPROM starting with EEPROM address 0. In this example, the interface registers are first set to control port write mode (line 1), which is followed by 18 no-op bytes (lines 2-4) so that the interface register data will appear on page 2 of the Table 20. EEPROM Writeback Example
0x01 Write 0x03 0x00 Length 0x03 0x03 0x05 0x00 Device Addr. 0x03 No-Op bytes 0x03 0x03 0x03 0x03 No-Op bytes 0x03 No-Op bytes 0x00 0x00 0x03 0x01 Write 0x00 0x00 Length 0x00 0x00 Interface Register Data 0x00 0x00 Interface Register Data 0x00 0x00 Interface Register Data 0x00 0x00 Interface Register Data 0x00 Device Addr. 0x23 0x03
Preliminary Technical Data
EEPROM. Next follows the write header (line 4) and then 32 bytes of interface register data (lines 5-8). Finally, the program RAM data, starting at ADAU1701 address 0x04 0x00 is written (lines 9-11). In this example, the program length is 70 words, or 350 bytes, so 332 more bytes will be included in the EEPROM but are not shown here. The ADAU1701 writes to EEPROM chip address 0x60. The LSBs of the addresses of some EEPROMs are pin-configurable; in most cases these pins should be tied low to set the address shown here. The maximum number of bytes that will be written back from the ADAU1701 is 35 (eight 4-byte Interface registers plus 3 bytes of EEPROM addressing overhead). With SCL running at 384 kHz, this means that the writeback operation will take approximately 73 s to complete after being triggered. Care should be taken to ensure that sufficient power is available to the system for enough time to allow a writeback to complete, especially if the WB signal is triggered from a falling power supply voltage.
0x08 0x1C Core Control Register address 0x03 0x03
0x00 0x40 Core Control Register Data 0x03 0x03
0x03
0x03
0x03
0x00 Device Addr. 0x00
0x08 0x00 Interface Register Address 0x00 0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x01 Write 0x00
0x01 Length 0x00
0x61
0x04 0x00 Program RAM address 0x00
0x00 0x00 Program RAM data 0xE8 0x01
0x01
0x00 0x00 Program RAM data
0x00
0x00
0x00 0x00 0x01 0x00 Program RAM data (continues for 332 more bytes)
0x08
0x00
Rev. PrF | Page 24 of 43
Preliminary Technical Data SIGNAL PROCESSING
OVERVIEW
The ADAU1701 is designed to provide all signal processing functions commonly used in stereo or multichannel playback systems. The signal processing flow is designed using the ADIsupplied SigmaStudio software, which allows graphical entry and real-time control of all signal processing functions. Many of the signal processing functions are coded using full, 56-bit double-precision arithmetic. The input and output word lengths are 24 bits. Four extra headroom bits are used in the processor to allow internal gains up to 24 dB without clipping. Additional gains can be achieved by initially scaling down the input signal in the signal flow. The signal processing blocks can be arranged in a custom program that can be loaded to the ADAU1701's RAM. The available signal processing blocks are explained in the following sections.
ADAU1701
1111 1110 0000 0000 0000 0000 0000 = -0.25 1111 1111 1111 1111 1111 1111 1111 = (1 LSB below 0.0) 0000 0000 0000 0000 0000 0000 0000 = 0.0 0000 0010 0000 0000 0000 0000 0000 = 0.25 0000 1000 0000 0000 0000 0000 0000 = 1.0 0010 0000 0000 0000 0000 0000 0000 = 4.0 0111 1111 1111 1111 1111 1111 1111 = (16.0 - 1 LSB). The serial port accepts up to 24 bits on the input and is signextended to the full 28 bits of the core. This allows internal gains of up to 24 dB without encountering internal clipping. A digital clipper circuit is used between the output of the DSP core and the outputs (see Figure 30). This clips the top four bits of the signal to produce a 24-bit output with a range of 1.0 (minus 1 LSB) to -1.0.
4-BIT SIGN EXTENSION SIGNAL PROCESSING (5.23 FORMAT) 1.23 5.23 5.23 DIGITAL CLIPPER 1.23
DATA IN
SERIAL PORT
NUMERIC FORMATS
It is common in DSP systems to use a standardized method of specifying numeric formats. Fractional number systems are specified by an A.B format, where A is the number of bits to the left of the decimal point and B is the number of bits to the right of the decimal point. The ADAU1701 uses the same numeric format for both the coefficient values (stored in the parameter RAM) and the signal data values. The format is as follows:
Figure 30. Numeric Precision and Clipping Structure
PROGRAMMING
On power-up, the ADAU1701's default program passes the unprocessed input signals to the outputs (Figure 15), but the outputs are muted by default (see Power-Up Sequence section). There are 1,024 instruction cycles per audio sample, resulting in an internal clock rate of 49.152 MHz (for fs = 48 kHz). This DSP runs in a stream-oriented manner, meaning all 1,024 instructions are executed each sample period. The ADAU1701 may also be set up to accept double or quad-speed inputs by reducing the number of instructions/sample, which can be set in the core control register. The part can be programmed easily using SigmaStudio, a graphical tool provided by Analog Devices. No knowledge of writing line-level DSP code is required.
Numerical Format: 5.23
Range: -16.0 to (+16.0 - 1 LSB) Examples: 1000 0000 0000 0000 0000 0000 0000 = -16.0 1110 0000 0000 0000 0000 0000 0000 = -4.0 1111 1000 0000 0000 0000 0000 0000 = -1.0
Rev. PrF | Page 25 of 43
04607-0-005
ADAU1701 RAMS AND REGISTERS
Table 21. Control Port Addresses
SPI/ I2C Subaddress 0-1023 (0x0000-0x03FF) 1024-2047 (0x0400-0x07FF) 2048-2055 (0x0800-0x0807) 2056 (0x0808) 2057-2060 (0x0809-0x080C) 2064-2068 (0x080D-0x0814) 2069-2073 (0x0815-0x0819) 2074-2075 (0x081A-0x081B) 2076 (0x081C) 2077 (0x081D) 2078 (0x081E) 2079 (0x081F) 2080-2081 (0x0820-0x0821) 2082 (0x0822) 2083 (0x0823) 2084 (0x0824) 2085 (0x0825) 2086 (0x0826) Register/RAM Name Parameter RAM Program RAM Interface Registers 0 - 7 GPIO Pin Setting Register Aux ADC Data Registers Safeload Data Registers 0 - 4 Safeload Address Registers 0 - 4 Data Capture Registers 0-1 DSP Core Control Register Reserved - do not write Serial Output Control Register Serial Input Control Register Multi-Purpose Pin Configuration Registers 0 - 1 Auxiliary ADC & Power Control Register Reserved - do not write Auxiliary ADC Enable Register Reserved - do not write Oscillator Power-down Register
Preliminary Technical Data
Read/Write Word Length Write: 4 Bytes, Read: 4 Bytes Write: 5 Bytes, Read: 5 Bytes Read: 4 bytes, Write: 4 bytes Read: 2 bytes, Write: 2 bytes Read: 2 bytes, Write: 1 byte Write: 5 Bytes, Read: N/A Write: 2 Bytes, Read: N/A Write: 2 Bytes, Read: 3 Bytes Write: 2 Bytes, Read: 2 Bytes Write: 1 Byte, Read: 1 Byte Write: 2 Bytes, Read: 2 Bytes Write: 1 Byte, Read: 1 Byte Write: 3 Bytes, Read: 3 Bytes Write: 2 Bytes, Read: 2 Bytes Write: 2 Bytes, Read: 2 Bytes Write: 2 Bytes, Read: 2 Bytes Write: 2 Bytes, Read: 2 Bytes Write: 2 Bytes, Read: 2 Bytes
Table 22. RAM Read/Write Modes
Memory Parameter RAM Program RAM
1
Size 1024 x 28 1024 x 40
Address Range 0-1023 1024-2047
Read Yes Yes
Write Yes Yes
Write Modes Direct Write1, Safeload Write Direct Write1
Internal registers should be cleared first to avoid clicks/pops.
CONTROL PORT ADDRESSING
Table 21 shows the addressing of the ADAU1701's RAM and register spaces. The address space encompasses a set of registers and two RAMs: one each for holding signal processing parameters and holding the program instructions. The program and parameter RAMs are initialized on power-up from onboard boot ROMs (see Power-Up Sequence section). Table 22 shows the sizes and available writing modes of the parameter and program RAMs. All RAMs and registers have a default value of all zeros, except for the program RAM which is loaded with the default program as described in the Initialization section.
The parameter RAM can be written and read using one of the two following methods. Direct Read/Write This method allows direct access to the program and parameter RAMs. This mode of operation is normally used during a complete new load of the RAMs, using burst-mode addressing. The clear registers bit in the core control register should be set to 0 using this mode to avoid any clicks or pops in the outputs. Note that it is also possible to use this mode during live program execution, but since there is no handshaking between the core and the control port, the parameter RAM will be unavailable to the DSP core during control writes, resulting in clicks and pops in the audio stream. Safeload Write Up to five safeload registers can be loaded with parameter RAM address/data. The data is then transferred to the requested address when the RAM is not busy. This method can be used for dynamic updates while live program material is playing through the ADAU1701. For example, a complete update of one biquad section can occur in one audio frame, while the RAM is not busy. This method is not available for writing to the program RAM or control registers.
PARAMETER RAM
The parameter RAM is 28 bits wide and occupies Addresses 0 to 1023. The parameter RAM is initialized to all zeros on powerup. The data format of the parameter RAM is twos complement 5.23. This means that the coefficients may range from +16.0 (minus 1 LSB) to -16.0, with 1.0 represented by the binary word 0000 1000 0000 0000 0000 0000 0000 or hexadecimal word 0x00 0x80 0x00 0x00.
Rev. PrF | Page 26 of 43
Preliminary Technical Data
The following sections discuss these two options in more detail.
ADAU1701
DATA CAPTURE REGISTERS
The ADAU1701's data capture feature allows the data at any node in the signal processing flow to be sent to one of two control port-readable registers. This can be used to monitor and display information about internal signal levels or compressor/limiter activity. For each of the data capture registers, a capture count and a register select must be set. The capture count is a number between 0 and 1023 that corresponds to the program step number where the capture will occur. The register select field programs one of four registers in the DSP core that will be transferred to the data capture register when the program counter equals the capture count. The register select field selections are shown in Table 24. Table 24. Data Capture Control Registers (2074-2075)
Register Bits 12:2 1:0 Function 11-Bit Program Counter Address Register Select
SAFELOAD REGISTERS
Many applications require real-time microcontroller control of signal processing parameters, such as filter coefficients, mixer gains, multi-channel virtualizing parameters, or dynamics processing curves. One example is that to prevent instability from occurring, all of the parameters of a biquad filter must be updated at the same time. Otherwise, the filter could execute for one or two audio frames with a mix of old and new coefficients. This mix could cause temporary instability, leading to transients that could take a long time to decay. To eliminate this problem, the ADAU1701 can simultaneously load a set of five 28-bit values to the desired parameter RAM address. Five registers are used because a biquad filter uses five coefficients, and it is desirable to be able to do a complete biquad update in one transaction. The first step in performing a safeload is writing the parameter address to one of the Safeload Address Registers (2069 - 2073). The 10-bit data word that should be written is the address to which the safeload is being performed. After the Safeload Address Register is set, then the 28-bit data word can be written to the corresponding Safeload Data Register (2064 - 2068). The data formats for these writes are detailed in Table 35 and Table 36. Table 23 shows how each of the five Address Registers map to their corresponding Data Registers. Table 23. Safeload Address & Data Register Mapping
Safeload Register 0 1 2 3 4 Safeload Address Register 2069 2070 2071 2072 2073 Safeload Data Register 2064 2065 2066 2067 2068
Table 25. Data Capture Output Register Select
Setting 00 01 10 11 Register Multiplier X Input (Mult_X_input) Multiplier Y Input (Mult_Y_input) Multiplier-Accumulator Output (MAC_out) Accumulator Feedback (Accum_fback)
The capture count and register select bits are set by writing to one of the eight data capture registers at register addresses 2074: Control Port Data Capture Setup Register 0 2075: Control Port Data Capture Setup Register 1 The captured data is in 5.19 two's complement data format. The four LSBs are truncated from the internal 5.23 data word. The data that must be written to set up the data capture is a concatenation of the 11-bit program count index with the 2-bit register select field. The capture count and register select values that correspond to the desired point to be monitored in the signal processing flow can be found in a file output from the program compiler. The capture registers can be accessed by reading from locations 2074 and 2075. The format for reading and writing to the data capture registers can be seen in Table 33 and Table 34.
Once the address and data registers are loaded, the initiate safeload transfer bit in the core control register should be set to initiate the loading into RAM. Each safeload register will take one of the 1,024 core instructions to load into the parameter RAM. Total program lengths should be limited to 1,019 cycles (1,024 - 5) to ensure that the SigmaDSP core has at least five free cycles to perform the safeloads. It is guaranteed that the safeload will have occurred within one LRCLK period (21 s at fs = 48 kHz) of the initiate safeload transfer bit being set. The safeload logic automatically sends only those safeload registers that have been written to since the last safeload operation. For example, if only two parameters are to be sent, only two of the five safeload registers must be written. When the initiate safeload transfer bit is asserted, only those two registers are sent; the other three registers are not sent to the RAM and can still hold old or invalid data.
Rev. PrF | Page 27 of 43
ADAU1701
DSP CORE CONTROL REGISTER
The controls in this register set the operation of the ADAU1701's DSP core. Table 26. DSP Core Control Register (2076)
Register Bits 15:14 13:12 Function Reserved GPIO Debounce control 00 = 20ms 01 = 40ms 10 = 10ms 11 = 5ms Reserved Aux ADC Data registers control port write mode GPIO Pin Setting register control port write mode Interface registers control port write mode Initiate Safeload Transfer Mute ADCs, active low Mute DACs, active low Clear Internal Registers to All Zeros, active low Sample Rate 00 = 1x (1024 instructions, 48 kHz) 01 = 2x (512 instructions, 96 kHz) 10 = 4x (256 instructions, 192 kHz) 00 = reserved
Preliminary Technical Data
Mute ADCs (Bit 4)
This bit will mute the output of the ADCs. The bit defaults to 0 and is active-low, so it must be set to 1 in order to pass audio from the ADCs.
Mute DACs (Bit 3)
This bit will mute the output of the DACs. The bit defaults to 0 and is active-low, so it must be set to 1 in order to pass audio from the DACs.
Clear Internal Registers to All Zeros (Bit 2)
This bit defaults to 0 and is active low. This bit needs to be set to 1 in order for a signal to pass through the SigmaDSP core.
11:9 8 7 6 5 4 3 2 1:0
Sample Rate (Bits 1:0)
These bits set the number of DSP instructions for every sample and the sample rate at which the ADAU1701 will operate. At the default setting of 1x there will be 1024 instructions per audio sample. This setting should be used with sample rates such as 48 kHz and 44.1 kHz. In the 2x setting the number of instructions per frame will be halved to 512 and the ADCs and DACs will nominally run at a 96 kHz sample rate. At a 4x setting there will be 256 instructions per cycle and the converters will run at a 192 kHz sample rate.
GPIO Debounce control (Bits 13:12)
Set debounce time of multipurpose pins set as GPIO inputs.
INTERFACE REGISTERS
The interface registers are used in self-boot mode to save parameters that need to be written to the external EEPROM. The ADAU1701 will then recall these parameters from the EEPROM after the next reset or power-up. This way, system parameters such as volume and EQ settings can be saved during power-down and recalled when the system is next turned on. There are eight 32-bit interface registers, which allows for eight 28-bit (plus zero-padding) parameters to be saved. The parameters that will be saved in these registers are set in the graphical programming tools. These registers are updated with their corresponding parameter RAM data once per sample period. An edge, which can be set to be either rising or falling, triggers the ADAU1701 to write the current contents of the interface registers to the EEPROM. See more information in the Self boot section. The user can write directly to the interface registers after bit 6 in the DSP core control register has been set. In this mode, the data in the registers is written from the control port and not from the DSP core.
Aux ADC Data registers control port write mode (Bit 8)
Setting this bit allows data to be written directly to the Aux ADC Data registers (2057-2060) from the control port. When set, the Aux ADC Data registers will no longer respond to settings on the multi-purpose pins.
GPIO Pin Setting register control port write mode (Bit 7)
When this bit is set, the GPIO Pin Setting register (2056) can be written to directly from the control port and this register will no longer respond to input settings on the multi-purpose pins.
Interface registers control port write mode (Bit 6)
When this bit is set, data can be written directly to the Interface registers (2048-2055) from the control port. In that state, the Interface registers will not be written from the SigmaDSP program.
Initiate Safe Transfer to Parameter RAM (Bit 5)
Setting this bit to 1 initiates a safeload transfer to the parameter RAM. This bit is automatically cleared when the operation is completed. There are five safeload register pairs (address/data); only those registers that have been written since the last safeload event are transferred to the parameter RAM.
CONTROL PORT READ/WRITE DATA FORMATS
The read/write formats of the control port are designed to be byte-oriented. This allows for easy programming of common
Rev. PrF | Page 28 of 43
Preliminary Technical Data
microcontroller chips. In order to fit into a byte-oriented format, 0s are appended to the data fields before the MSB in order to extend the data word to the next multiple of eight bits. For example, 28-bit words written to the parameter RAM are appended with four leading 0s in order to reach 32 bits (4 bytes); 40-bit words written to the program RAM are not appended with any 0s because it is already a full 5 bytes. These zero-extended data fields are appended to a 3-byte field consisting of a 7-bit chip address, a read/write bit, and an 11-bit RAM/register address. The control port knows how many data bytes to expect based on the address that is received in the first three bytes.
ADAU1701
The total number of bytes for a single-location write command can vary from four bytes (for a control register write), to eight bytes (for a program RAM write). Burst mode may be used to fill contiguous register or RAM locations. A burst mode write is done by writing the address and data of the first RAM/register location to be written. Rather than ending the control port transaction (by issuing a stop command in I2C mode or by bringing the CLATCH signal high in SPI mode, after the data word), as would be done in a single-address write, the next data word can be written immediately without first writing its specific address. The ADAU1701 control port auto-increments the address of each write, even across the boundaries of the different RAMs and registers. Table 28 and Table 30 show examples of burst mode writes.
Table 27. Parameter RAM Read/Write Format (Single Address)
Byte 0 chip_adr [6:0], W/R Byte 1 00000, param_adr[10:8] Byte 2 param_adr[7:0] Byte 3 0000, param[27:24] Bytes 4-6 param [23:0]
Table 28. Parameter RAM Block Read/Write Format (Burst Mode)
Byte 0 chip_adr [6:0], W/R Byte 1 00000, param_adr[10:8] Byte 2 param_adr[7:0] Byte 3 0000, param[27:24] Bytes 4-6 param[23:0] Byte 7 Byte 8 Byte 9 Byte 10 param_adr + 1 Byte 11 Byte 12 Byte 13 Byte 14 param_adr + 2
<--param_adr-->
Table 29. Program RAM Read/Write Format (Single Address)
Byte 0 chip_adr [6:0], W/R Byte 1 0000, prog_adr[11:8] Byte 2 prog_adr[7:0] Bytes 3-7 prog[39:0]
Table 30. Program RAM Block Read/Write Format (Burst Mode)
Byte 0 chip_adr [6:0], W/R Byte 1 0000, prog_adr[11:8] Byte 2 prog_adr[7:0] Byte 3-7 prog[39:0] Byte 8 Byte 9 Byte 10 Byte 11 Byte 12 prog_adr +1 Byte 13 Byte 14 Byte 15 Byte 16 Byte 17 prog_adr +2
<--prog_adr-->
Table 31. Control Register Read/Write Format (Core, Serial Out 0, Serial Out 1)
Byte 0 chip_adr [6:0], W/R Byte1 0000, reg_adr[11:8] Byte 2 reg_adr[7:0] Byte 3 data[15:8] Byte 4 data[7:0]
Table 32. Control Register Read/Write Format (RAM Configuration, Serial Input)
Byte 0 chip_adr [6:0], W/R Byte1 0000, reg_adr[11:8] Byte 2 reg_adr[7:0] Byte 3 data[7:0]
Table 33. Data Capture Register Write Format
Byte 0 chip_adr [6:0], W/R
1
Byte 1 0000, data_capture_adr[11:8]
Byte 2 data_capture_adr[7:0]
Byte 3 000, progCount[10:6]1
Byte 4 progCount[5:0]1, regSel[1:0]2
ProgCount[10:0] = value of program counter where trap occurs (the table of values is generated by the program compiler).
Rev. PrF | Page 29 of 43
ADAU1701
2
Preliminary Technical Data
RegSel[1:0] selects one of four registers (see Data Capture Registers section).
Table 34. Data Capture (Control Port Readback) Register Read Format
Byte 0 chip_adr [6:0], W/R Byte 1 0000, data_capture_adr[11:8] Byte 2 data_capture_adr[7:0] Bytes 3-5 data[23:0]
Table 35. Safeload Address Register Write Format
Byte 0 chip_adr [6:0], W/R Byte 1 0000, safeload_adr[11:8] Byte 2 safeload_adr[7:0] Byte 3 000000, param_adr[9:8] Byte 4 param_adr[7:0]
Table 36. Safeload Data Register Write Format
Byte 0 chip_adr [6:0], W/R Byte 1 0000, safeload_adr[11:8] Byte 2 safeload_adr[7:0] Byte 3 00000000 Byte 4 0000, data[27:24] Bytes 5-7 data[23:0]
DATA RAM
The ADAU1701's data RAM is used to store audio data words for processing. For the most part, this process is transparent to the user; the user cannot even directly address this RAM space from the control port. The size of the data RAM is 2 k words. The user's only concern should be when implementing blocks that utilize large amounts of data RAM space, such as delays. The SigmaDSP core processes delay times in one-sample increments, so the total pool of delay available to the user will equal 2048 x the sample period. For fs = 48 kHz, this means
that the pool of available delay is a maximum of about 43 ms. In practice, this much data memory will not be available to the user, though, because every block in a design will use a few data memory locations for its processing. In most DSP programs this will not significantly impact the total delay time. The SigmaStudio compiler will manage the data RAM and will indicate if the number of addresses used has exceeded the maximum available.
Rev. PrF | Page 30 of 43
Preliminary Technical Data MULTIPURPOSE PINS
Table 37. Multipurpose Pin Configuration Registers
Register MP_CFG0 (2080) MP_CFG1 (2081) Bits[23:20] MP5[3:0] MP11[3:0] Bits[19:16] MP4[3:0] MP10[3:0] Bits[15:12] MP3[3:0] MP9[3:0] Bits[11:8] MP2[3:0] MP8[3:0] Bits[7:4] MP1[3:0] MP7[3:0]
ADAU1701
Bits[3:0] MP0[3:0] MP6[3:0]
The ADAU1701 has 12 multipurpose (MP) pins that can be individually programmed to be used as serial data inputs, serial data outputs, digital control inputs and outputs to and from the SigmaDSP core, or as inputs to the four-channel auxiliary ADC. These pins allow the ADAU1701 to be used with external ADCs and DACs, take analog or digital inputs to control settings such as volume control, or output digital signals to drive LED indicators.
to or read from this register after setting bit 7 of the Core Control Register. This register is updated once every LRCLK frame (1/fs) Table 39. GPIO Pin Setting Register (2056)
Register Bits 15:12 11 10 9 8 7 6 5 4 3 2 1 0 Function Unused MP11 setting MP10 setting MP9 setting MP8 setting MP7 setting MP6 setting MP5 setting MP4 setting MP3 setting MP2 setting MP1 setting MP0 setting
MULTIPURPOSE PIN CONFIGURATION REGISTERS
Each multipurpose pin can be set to its different functions from these registers (2080-2081). These two three-byte registers are broken up into twelve 4-bit (nibble) sections that each control a different MP pin as detailed in Table 37. Table 38 lists the different functions of each nibble setting within the MP Pin Configuration Registers. The MSB of each MP pin's 4-bit configuration inverts the input to or output from the pin. The MP pins will have an internal pull-up resistor (approximately 10 k) enabled when they are set to digital inputs (either GPIO input or serial data port input). Table 38. Multipurpose Pin Configuration Register Bit Functions
MPx[3:0] 1111 1110 1101 1100 1011 1010 1001 1000 0111 0110 0101 0100 0011 0010 0001 0000 Pin Function Aux ADC input (see Table 40) Reserved Reserved Serial Data Port - inverted (see Table 44) Open Collector Output - inverted GPIO Output - inverted GPIO Input, no debounce - inverted GPIO Input, debounced - inverted N/A Reserved Reserved Serial Data Port (see Table 44) Open Collector Output GPIO Output GPIO Input, no debounce GPIO Input, debounced
AUXILIARY ADC
The ADAU1701 has a four-channel auxiliary 8-bit ADC that can be used to connect a potentiometer to control volume, tone, or other parameter settings in the DSP program. Each of the four channels is sampled at the audio sampling frequency (fS), which defaults to 48 kHz with a 12.288 MHz crystal connected to the ADAU1701 oscillator. Full-scale input on this ADC is 3.3V, so the step size is approximately 13mV (3.3V/256 steps). The input resistance of the ADC is approximate 20 k. Table 40 indicates which four MP pins are mapped to the four channels of the aux ADC. The aux ADC is enabled for those pins by writing 1111 to the appropriate pin's portion of the Multipurpose Pin Configuration Registers. The auxiliary ADC is turned on by writing a 1 to bit 15 of the Aux ADC enable register (Table 42). Noise on the ADC input could cause the digital output to be constantly changing by a few LSBs. In cases where the aux ADC is used as a volume control, this would cause small gain fluctuations. To avoid this, a low-pass filter or hysteresis can be added to the aux ADC signal path. These functions can be enabled through the Auxiliary ADC & Power Control Register (2082), shown in Table 41. The filter is enabled by default when the aux ADC is enabled. When data is read from the aux ADC registers, 2 bytes (12 bits of data, plus zero-padded LSBs) are available because of this filtering.
GPIO PIN SETTING REGISTER
This register gives the user access through the control port to set the GPIO pins. High or low settings can be directly written
Rev. PrF | Page 31 of 43
ADAU1701
Aux ADC Input Pin 20 k S2 S1 10 k 1.8 pF
Preliminary Technical Data
1 0 DAC2 power-down DAC3 power-down
Table 42. Aux ADC Enable Register (2084)
Register Bits 15 14:0 Function Enable Auxiliary ADC Reserved, set to 0
Figure 31. Auxiliary ADC input circuit
GENERAL PURPOSE INPUT/OUTPUTS
The general purpose input/output (GPIO) pins can be used as either inputs or outputs. These pins are readable and settable either through the control interface or directly by the SigmaDSP core. When set as inputs, they can be used with push-button switches or rotary encoders to control DSP program settings. Digital outputs may be used to drive LEDs or external logic to indicate the status of internal signals and control other devices. Examples of this use include indicating signal overload, signal present, and button press confirmation. When set as outputs, these pins can typically drive 5 mA. This is enough current to directly drive high-efficiency LEDs, which typically need 2-4 mA. Standard LEDs require about 20 mA and can be driven from a GPIO output with an external transistor or buffer. When the GPIO pins are set as open-collector outputs, they should be pulled up to a maximum voltage of 3.3 V (the voltage on IOVDD).
Figure 31 shows the input circuit for the auxiliary ADC. Switch S1 enables the aux ADC, and is set by bit 15 of the Aux ADC enable register. The sampling switch, S2, operates at the audio sampling frequency (fs), which is 48 kHz with a 12.288 MHz crystal connected to the chip's oscillator. The aux ADC registers can be written to directly after bit 8 in the DSP core control register has been set. In this mode, the voltages on the analog inputs are not written into the registers, but rather the data in the registers is written from the control port. These registers take a single byte of data when in control port write mode. PVDD supplies the 3.3 V power for the aux ADC's analog input. The digital core of the aux ADC is powered with the 1.8 V DVDD signal. Table 40. Multi-Purpose Pin Aux ADC Mapping
Multipurpose Pin MP0 MP1 MP2 MP3 MP4 MP5 MP6 MP7 MP8 MP9 MP10 MP11 Function N/A N/A ADC1 ADC2 N/A N/A N/A N/A ADC3 ADC0 N/A N/A
SERIAL DATA INPUT/OUTPUT PORTS
The ADAU1701's flexible serial data input and output ports can be set to accept or transmit data in 2-channel formats or in an 8-channel TDM stream. Data is processed in twos complement, MSB-first format. The left channel data field always precedes the right channel data field in the 2-channel streams. In the TDM modes, slots 0 to 3 fall in the first half of the audio frame, and slots 4 to 7 are in the second half of the frame. TDM mode allows fewer multipurpose pins to be used, freeing more pins for other functions. The serial modes are set in the serial output and serial input control registers. The serial data clocks need to be synchronous with the ADAU1701's master clock input. The input control register allows control of clock polarity and data input modes. The valid data formats are I2S , left-justified, right-justified (24-, 20-, 18-, or 16-bit), and 8-channel TDM. In all modes except for the right-justified modes, the serial port will accept an arbitrary number of bits up to a limit of 24. Extra bits will not cause an error, but they will be truncated internally. Proper operation of the right-justified modes requires that there be exactly 64 BCLKs per audio frame. The TDM data is input on SDATA_IN0. The LRCLK in TDM mode can be input to the ADAU1701 either as a 50/50 duty cycle clock or as a bit-wide pulse.
Table 41. Auxiliary ADC & Power Control Register (2082)
Register Bits 15:10 9:8 Function Reserved, set to 0 Aux ADC Filtering 00 = 4-bit hysteresis (12 bit level) 01 = 5-bit hysteresis (12 bit level) 01 = Hysteresis bypassed 11 = Low-pass filter bypassed ADC power-down (both ADCs) Voltage reference buffer power-down Voltage reference power-down Reserved, set to 0 DAC0 power-down DAC1 power-down
7 6 5 4 3 2
Rev. PrF | Page 32 of 43
Preliminary Technical Data
In TDM mode, the ADAU1701 can be a master for 48 kHz and 96 kHz data, but not for 192 kHz data. Table 43 displays the modes in which the serial output port will function. Table 43. Serial Output Port Master/Slave Mode Capabilities
fS 48 kHz 96 kHz 192 kHz 2-Channel Modes (I2S, LJ, RJ) Master and slave Master and slave Master and slave 8-Channel TDM Master and slave Master and slave Slave only
ADAU1701
3) and the OUTPUT_LRCLK and OUTPUT BCLK (MP10 & MP11) are used to clock the SDATA_OUTx signals (MP6-9). If an external ADC will be connected as a slave to the ADAU1701, both the input and output port clocks will need to be used. The output LRCLK and BCLK (MP10 & MP11) will need to be set into master mode and connected externally to the input LRCLK and BCLK pins (MP4 & MP5) and the external ADC's clock input pins. The data will be output from the external ADC into the SigmaDSP on one of the four SDATA_IN pins (MP0-3). Connections to an external DAC are handled exclusively with the output port pins. The output LRCLK and BCLK can be set to be either master or slave, and the SDATA_OUT pins are used to output data from the SigmaDSP to the external DAC. Table 45 shows the proper configurations for standard audio data formats. Table 44. Multi-Purpose Pin Serial Data Port Functions
Multipurpose Pin MP0 MP1 MP2 MP3 MP4 MP5 MP6 MP7 MP8 MP9 MP10 MP11 Function SDATA_IN0/TDM_IN SDATA_IN1 SDATA_IN2 SDATA_IN3 INPUT_LRCLK (slave only) INPUT_BCLK (slave only) SDATA_OUT0/TDM_OUT SDATA_OUT1 SDATA_OUT2 SDATA_OUT3 OUTPUT_LRCLK (master or slave) OUTPUT_BCLK (master or slave)
The output control registers give the user control of clock polarities, clock frequencies, clock types, and data format. In all modes except for the right-justified modes (MSB delayed by 8, 12, or 16), the serial port accepts an arbitrary number of bits up to a limit of 24. Extra bits will not cause an error, but will be truncated internally. Proper operation of the right-justified modes requires the LSB to align with the edge of the LRCLK. The default settings of all serial port control registers correspond to 2-channel I2S mode. All register settings apply to both master and slave modes unless otherwise noted. The functions of the individual multi-purpose pins in serial data port mode are shown in Table 44. Pins MP0-5 support digital data input to the ADAU1701 and pins MP6-11 handle digital data output from the DSP. The configuration of the serial data input port is set in the Serial Input Control Register (Table 47) and the output port is controlled with the Serial Output Control Register (Table 46). The input port clocks function only as slaves and the output port clocks can be set to be either master or slave. The INPUT_LRCLK and INPUT_BCLK pins (MP4 & MP5) are used to clock the SDATA_INx signals (MP0-
Table 45. Data Format Configurations
Format I2S (Figure 32) Left-Justified (Figure 33) Right-Justified (Figure 34) TDM with Clock (Figure 35) TDM with Pulse (Figure 36) LRCLK Polarity Frame begins on falling edge Frame begins on rising edge Frame begins on rising edge Frame begins on falling edge Frame begins on rising edge LRCLK Type Clock Clock Clock Clock Pulse BCLK Polarity Data changes on falling edge Data changes on falling edge Data changes on falling edge Data changes on falling edge Data changes on falling edge MSB Position Delayed from LRCLK edge by one BCLK Aligned with LRCLK edge Delayed from LRCLK edge by 8, 12, or 16 BCLKs Delayed from start of word clock by one BCLK Delayed from start of word clock by one BCLK
Rev. PrF | Page 33 of 43
ADAU1701
Table 46. Serial Output Control Register (2078)
Register Bits 15:14 13 Function Unused OUTPUT_LRCLK Polarity 0 = Frame Begins on Falling Edge 1 = Frame Begins on Rising Edge OUTPUT_BCLK Polarity 0 = Data Changes on Falling Edge 1 = Data Changes on Rising Edge Master/Slave 0 = Slave 1 = Master OUTPUT_BCLK Frequency (Master Mode only) 00 = core_clock/16 01 = core_clock/8 10 = core_clock/4 11 = core_clock/2 OUTPUT_LRCLK (Master Mode only) 00 = core_clock/1024 01 = core_clock/512 10 = core_clock/256 Frame Sync Type 0 = LRCLK 1 = Pulse Serial Output/TDM Mode Control 0 = 8 Serial Data Outputs 1 = Enable TDM on SDATA_OUTx MSB Position 000 = Delay by 1 001 = Delay by 0 010 = Delay by 8 011 = Delay by 12 100 = Delay by 16 101 Reserved 111 Reserved Output Word Length 00 = 24 Bits 01 = 20 Bits 10 = 16 Bits 11 = Reserved
Preliminary Technical Data
SERIAL OUTPUT CONTROL REGISTERS
OUTPUT_LRCLK Polarity (Bit 13)
When set to 0, the left channel data is clocked when OUTPUT_LRCLK is low, and the right channel data clocked when OUTPUT_LRCLK is high. When set to 1, the right channel data is clocked when OUTPUT_LRCLK is low, and the left channel data clocked when OUTPUT_LRCLK is high.
12
OUTPUT_BCLK Polarity (Bit 12)
This bit controls on which edge of the bit clock the output data is clocked. Data changes on the falling edge of OUTPUT_BCLK when this bit is set to 0, and on the rising edge when this bit is set at 1.
11
10:9
Master/Slave (Bit 11)
This bit sets whether the output port is a clock master or slave. The default setting is slave; on power-up, Pins OUTPUT_BCLK and OUTPUT_LRCLK are set as inputs until this bit is set to 1, at which time they become clock outputs.
8:7
OUTPUT_BCLK Frequency (Bits 10:9)
When the output port is being used as a clock master, these bits set the frequency of the output bit clock, which is divided down from the internal 49.152 MHz core clock.
6
5
OUTPUT_LRCLK Frequency (Bits 8:7)
When the output port is used as a clock master, these bits set the frequency of the output word clock on the OUTPUT_LRCLK pins, which is divided down from the internal 49.152 MHz core clock.
4:2
Frame Sync Type (Bit 6)
This bit sets the type of signal on the OUTPUT_LRCLK pins. When set to 0, the signal is a word clock with a 50% duty cycle; when set to 1, the signal is a pulse with a duration of one bit clock at the beginning of the data frame.
1:0
Serial Output/TDM Mode Control (Bit 5)
Setting this bit to 1 changes the output port from multiple serial outputs to a single TDM output stream on the appropriate SDATA_OUTx pin. This bit must be set in both serial output control registers to enable 16-channel TDM on SDATA_OUT0.
MSB Position (Bits 4:2)
These three bits set the position of the MSB of data with respect to the LRCLK edge. The data output of the ADAU1701 is always MSB first.
Output Word Length (Bits 1:0)
These bits set the word length of the output data-word. All bits following the LSB are set to 0.
Rev. PrF | Page 34 of 43
Preliminary Technical Data
Table 47. Serial Input Control Register (2079)
Register Bits 7:5 4 Function Unused INPUT_LRCLK polarity 0 = Frame begins on falling edge 1 = Frame begins on rising edge INPUT_BCLK polarity 0 = Data changes on falling edge 1 = Data changes on rising edge Serial Input Mode 000 = I2S 001 = Left-justified 010 = TDM 011 = Right-justified, 24-bit 100 = Right-justified, 20-bit 101 = Right-justified, 18-bit 110 = Right-justified, 16-bit
ADAU1701
INPUT_BCLK Polarity (Bit 3)
This bit controls on which edge of the bit clock the input data changes, and on which edge it is clocked. Data changes on the falling edge of INPUT_BCLK when this bit is set to 0, and on the rising edge when this bit is set at 1.
3
Serial Input Mode (Bits 2:0)
These two bits control the data format that the input port expects to receive. Bits 3 and 4 of this control register will override the settings in Bits 2:0, so all four bits must be changed together for proper operation in some modes. The clock diagrams for these modes are shown in Figure 32, Figure 33, and Figure 34. Note that for left-justified and right-justified modes the LRCLK polarity is high, then low, which is opposite from the default setting of Bit 4. When these bits are set to accept a TDM input, the ADAU1701's data starts after the edge defined by Bit 4. The ADAU1701's TDM data stream should be input on pin SDATA_IN0. Figure 35 shows a TDM stream with a high-to-low triggered LRCLK and data changing on the falling edge of the BCLK. The ADAU1701 expects the MSB of each data slot delayed by one BCLK from the beginning of the slot, just like in the stereo I2S format. In TDM mode, Channels 0 to 3 will be in the first half of the frame, and Channels 4 to 7 will be in the second half. Figure 36 shows an example of a TDM stream running with a pulse word clock, which would be used to interface to ADI codecs in their auxiliary mode. To work in this mode on either the input or output serial ports, the ADAU1701 should be set to frame beginning on the rising edge of LRCLK, data changing on the falling edge of BCLK, and MSB position delayed from the start of the word clock by one BCLK.
2:0
SERIAL INPUT CONTROL REGISTER
INPUT_LRCLK Polarity (Bit 4)
When set to 0, the left channel data on the SDATA_INx pins is clocked when INPUT_LRCLK is low; and the right input data clocked when INPUT_LRCLK is high. When set to 1, this is reversed. In TDM mode, when this bit is set to 0, data is clocked in starting with the next appropriate BCLK edge (set in Bit 3 of this register) following a falling edge on the INPUT_LRCLK pin. When set to 1 and running in TDM mode, the input data is valid on the BCLK edge following a rising edge on the word clock (INPUT_LRCLK). INPUT_LRCLK can also operate with a pulse input, rather than a clock. In this case, the first edge of the pulse is used by the ADAU1701 to start the data frame. When this polarity bit is set to 0, a low pulse should be used, and a high pulse should be used when the bit it set to 1.
LRCLK BCLK SDATA MSB
LEFT CHANNEL
RIGHT CHANNEL
04607-0-023
04607-0-024
LSB 1 /FS
MSB
LSB
Figure 32. I2S Mode--16 to 24 Bits per Channel
LRCLK BCLK SDATA MSB
LEFT CHANNEL LSB MSB 1 /FS
RIGHT CHANNEL
LSB
Figure 33. Left-Justified Mode--16 to 24 Bits per Channel
Rev. PrF | Page 35 of 43
ADAU1701
LRCLK BCLK SDATA MSB LEFT CHANNEL LSB 1 /FS
Preliminary Technical Data
RIGHT CHANNEL
04607-0-025
04607-0-022
MSB
LSB
Figure 34. Right-Justified Mode--16 to 24 Bits per Channel
LRCLK 256 BCLKs BCLK 32 BCLKs DATA SLOT 1 SLOT 2 SLOT 3 SLOT 4 SLOT 5 SLOT 6 SLOT 7 SLOT 8
LRCLK
04607-0-012
BCLK MSB MSB-1 MSB-2 DATA
Figure 35. TDM Mode
LRCLK
BCLK
MSB TDM SDATA
CH 0
MSB TDM
8TH CH
SLOT 0 32 BCLKs
SLOT 1
SLOT 2
SLOT 3
SLOT 4
SLOT 5
SLOT 6
SLOT 7
Figure 36. TDM Mode with Pulse Word Clock
Rev. PrF | Page 36 of 43
Preliminary Technical Data LAYOUT RECOMMENDATIONS
PARTS PLACEMENT
The ADC input voltage-to-current resistors and the ADC current set resistor should be placed as close to the input pins (2, 3 & 4) as possible. All 100 nF bypass capacitors, which are recommended for every analog, digital, and PLL power/ground pair, should be placed as close to the ADAU1701 as possible. Both the 3.3 V and 1.8 V signals on the board should also each be bypassed with a single bulk capacitor (10-47 F).
ADAU1701
All traces in the crystal oscillator circuit (Figure 16) should be kept as short as possible to minimize stray capacitance. There should not be any long board traces connected to any of these components, as this may affect crystal start-up and operation.
GROUNDING
A single ground plane should be used in the application layout. Components in an analog signal path should still be placed away from digital signals.
Rev. PrF | Page 37 of 43
ADAU1701 TYPICAL APPLICATION SCHEMATIC - SELF BOOT MODE
Preliminary Technical Data
Rev. PrF | Page 38 of 43
Preliminary Technical Data TYPICAL APPLICATION SCHEMATIC - I2C CONTROL
ADAU1701
Rev. PrF | Page 39 of 43
ADAU1701 TYPICAL APPLICATION SCHEMATIC - SPI CONTROL
Preliminary Technical Data
Rev. PrF | Page 40 of 43
Preliminary Technical Data DIGITAL TIMING DIAGRAMS
tBIH
BCLK_IN
ADAU1701
tLIH
tBIL tLIS
LRCLK_IN
tSIS
SDATA_INX LEFT-JUSTIFIED MODE MSB MSB-1
tSIH tSIS
MSB
SDATA_INX I2S-JUSTIFIED MODE
tSIH tSIS
MSB
SDATA_INX RIGHT-JUSTIFIED MODE 8-BIT CLOCKS (24-BIT DATA) 12-BIT CLOCKS (20-BIT DATA) 14-BIT CLOCKS (18-BIT DATA) 16-BIT CLOCKS (16-BIT DATA)
tSIS
LSB
tSIH
tSIH
Figure 37. Serial Input Port Timing
tBIH
BCLK_OUTX
tLCH
tTS
tBIL tLOS
LRCLK_OUTX
SDATA_OUTX LEFT-JUSTIFIED MODE
tSDDS tSDDM
MSB MSB-1
SDATA_OUTX I2S-JUSTIFIED MODE
tSDDS tSDDM
MSB
SDATA_OUTX RIGHT-JUSTIFIED MODE 8-BIT CLOCKS (24-BIT DATA) 12-BIT CLOCKS (20-BIT DATA) 14-BIT CLOCKS (18-BIT DATA) 16-BIT CLOCKS (16-BIT DATA)
tSDDS tSDDM
MSB LSB
Figure 38. Serial Output Port Timing
Rev. PrF | Page 41 of 43
04607-0-014
04607-0-013
ADAU1701
tCLS tCCPL
CLATCH CCLK CDATA
Preliminary Technical Data
tCLH tCLPH tCCPH
tCDH tCDS
COUT
tCOD
Figure 39. SPI Port Timing
tTSCH
SDA
tDS
tTSCH
tSR
tSCLH
04607-026
SCLK
tSCLL
tST
tSCS
tSSH
Figure 40. I2C Port Timing
tMP
MCLK
RESETB
tRLPW
Figure 41. Master Clock and Reset Timing
Rev. PrF | Page 42 of 43
04607-0-016
04607-0-015
Preliminary Technical Data OUTLINE DIMENSIONS
0.75 0.60 0.45 1.60 MAX
48 1
ADAU1701
9.00 BSC SQ
37 36
PIN 1
1.45 1.40 1.35
10 6 2
SEATING PLANE
0.20 0.09 7 3.5 0 0.08 MAX COPLANARITY
TOP VIEW
(PINS DOWN)
7.00 BSC SQ
VIEW A
12 13 24 25
0.15 0.05
SEATING PLANE
0.50 BSC
VIEW A
ROTATED 90 CCW
COMPLIANT TO JEDEC STANDARDS MS-026BBC
0.27 0.22 0.17
Figure 42. 48-Lead Low-Profile Quad Flat Package [LQFP] Dimensions Shown in Millimeters
ORDERING GUIDE
Model ADAU1701JSTZ1 ADAU1701JSTZ-RL EVAL-ADAU1701EB
1
Temperature Range 0C to 70C 0C to 70C
Package Description 48-Lead LQFP 48-Lead LQFP Evaluation Board
Package Option ST-48 ST-48 in 13" Reel
Z = Pb-free
(c)2006 Analog Devices, Inc. All rights reserved. Trademarks and registered trademarks are the property of their respective owners.
PR05797-0-5/06(PrF)
Rev. PrF | Page 43 of 43


▲Up To Search▲   

 
Price & Availability of EVAL-ADAU1701EB

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X